test,win: fix -Wcast-function-type warnings (#4867)

This commit is contained in:
Ben Noordhuis 2025-08-24 20:22:04 +02:00 committed by GitHub
parent 385896c388
commit 9a8d9c66f3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 14 additions and 11 deletions

View File

@ -214,7 +214,10 @@ static int maybe_run_test(int argc, char **argv) {
#ifdef _WIN32 #ifdef _WIN32
DWORD flags; DWORD flags;
HMODULE kernelbase_module; HMODULE kernelbase_module;
sCompareObjectHandles pCompareObjectHandles; /* function introduced in Windows 10 */ union {
FARPROC proc;
sCompareObjectHandles pCompareObjectHandles; /* Windows >= 10 */
} u;
#endif #endif
notify_parent_process(); notify_parent_process();
ASSERT_EQ(sizeof(closed_fd), read(0, &closed_fd, sizeof(closed_fd))); ASSERT_EQ(sizeof(closed_fd), read(0, &closed_fd, sizeof(closed_fd)));
@ -224,10 +227,9 @@ static int maybe_run_test(int argc, char **argv) {
ASSERT_GT((intptr_t) open_fd, 0); ASSERT_GT((intptr_t) open_fd, 0);
ASSERT_NE(0, GetHandleInformation(open_fd, &flags)); ASSERT_NE(0, GetHandleInformation(open_fd, &flags));
kernelbase_module = GetModuleHandleW(L"kernelbase.dll"); kernelbase_module = GetModuleHandleW(L"kernelbase.dll");
pCompareObjectHandles = (sCompareObjectHandles) u.proc = GetProcAddress(kernelbase_module, "CompareObjectHandles");
GetProcAddress(kernelbase_module, "CompareObjectHandles"); if (u.pCompareObjectHandles != NULL)
ASSERT_NE(pCompareObjectHandles == NULL || \ ASSERT_EQ(FALSE, u.pCompareObjectHandles(open_fd, closed_fd));
!pCompareObjectHandles(open_fd, closed_fd), 0);
#else #else
ASSERT_GT(open_fd, 2); ASSERT_GT(open_fd, 2);
ASSERT_GT(closed_fd, 2); ASSERT_GT(closed_fd, 2);

View File

@ -1678,7 +1678,10 @@ TEST_IMPL(spawn_fs_open) {
#ifdef _WIN32 #ifdef _WIN32
const char dev_null[] = "NUL"; const char dev_null[] = "NUL";
HMODULE kernelbase_module; HMODULE kernelbase_module;
sCompareObjectHandles pCompareObjectHandles; /* function introduced in Windows 10 */ union {
FARPROC proc;
sCompareObjectHandles pCompareObjectHandles; /* Windows >= 10 */
} u;
#else #else
const char dev_null[] = "/dev/null"; const char dev_null[] = "/dev/null";
#endif #endif
@ -1702,11 +1705,9 @@ TEST_IMPL(spawn_fs_open) {
ASSERT_NE(0, DuplicateHandle(GetCurrentProcess(), fd, GetCurrentProcess(), &dup_fd, ASSERT_NE(0, DuplicateHandle(GetCurrentProcess(), fd, GetCurrentProcess(), &dup_fd,
0, /* inherit */ TRUE, DUPLICATE_SAME_ACCESS)); 0, /* inherit */ TRUE, DUPLICATE_SAME_ACCESS));
kernelbase_module = GetModuleHandleW(L"kernelbase.dll"); kernelbase_module = GetModuleHandleW(L"kernelbase.dll");
pCompareObjectHandles = (sCompareObjectHandles) u.proc = GetProcAddress(kernelbase_module, "CompareObjectHandles");
GetProcAddress(kernelbase_module, "CompareObjectHandles"); if (u.pCompareObjectHandles != NULL)
ASSERT_NE(pCompareObjectHandles == NULL || ASSERT_EQ(TRUE, u.pCompareObjectHandles(fd, dup_fd));
pCompareObjectHandles(fd, dup_fd),
0);
#else #else
dup_fd = dup(fd); dup_fd = dup(fd);
#endif #endif