From: Jarred Sumner Date: Mon, 4 Sep 2023 09:09:50 +0000 (-0800) Subject: Fix MSVC warnings on x64 (#1956) X-Git-Tag: v3.7.2~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e017de2b772ea050d407e4ff3a6cc5ea0b5abdd7;p=thirdparty%2Flibarchive.git Fix MSVC warnings on x64 (#1956) On Windows x64, `long` & `ulong` are 4 bytes instead of 8 bytes like everywhere else Co-authored-by: Jarred Sumner --- diff --git a/libarchive/archive_digest.c b/libarchive/archive_digest.c index 08a9aeb02..3776831b2 100644 --- a/libarchive/archive_digest.c +++ b/libarchive/archive_digest.c @@ -110,7 +110,7 @@ win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) #if defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA BCryptHashData(ctx->hHash, (PUCHAR)(uintptr_t)buf, - len, 0); + (ULONG)len, 0); #else CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, diff --git a/libarchive/archive_random.c b/libarchive/archive_random.c index 301765acd..a410dc089 100644 --- a/libarchive/archive_random.c +++ b/libarchive/archive_random.c @@ -93,7 +93,7 @@ archive_random(void *buf, size_t nbytes) status = BCryptOpenAlgorithmProvider(&hAlg, BCRYPT_RNG_ALGORITHM, NULL, 0); if (!BCRYPT_SUCCESS(status)) return ARCHIVE_FAILED; - status = BCryptGenRandom(hAlg, buf, nbytes, 0); + status = BCryptGenRandom(hAlg, buf, (ULONG)nbytes, 0); BCryptCloseAlgorithmProvider(hAlg, 0); if (!BCRYPT_SUCCESS(status)) return ARCHIVE_FAILED;