From 4fa627e70a925ec32b9d9109f2e508498d3ba915 Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Sun, 24 Aug 2025 18:49:20 +0300 Subject: [PATCH] [NTDLL_WINETEST] Fix a problem with broken calling convention --- modules/rostests/winetests/ntdll/rtl.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/modules/rostests/winetests/ntdll/rtl.c b/modules/rostests/winetests/ntdll/rtl.c index 53247b00cc4..9cdddc3cac7 100644 --- a/modules/rostests/winetests/ntdll/rtl.c +++ b/modules/rostests/winetests/ntdll/rtl.c @@ -426,6 +426,17 @@ static void test_RtlByteSwap(void) "ntdll.RtlUlongByteSwap() returns %#lx\n", lresult ); } +#ifdef __REACTOS__ + /* On older Windows versions, RtlUlonglongByteSwap has a broken calling convention! */ + RTL_OSVERSIONINFOEXW verInfo = { sizeof(verInfo) }; + RtlGetVersion(&verInfo); + if (verInfo.dwMajorVersion < 10) + { + skip("Skipping RtlUlonglongByteSwap test due to broken calling convention\n"); + return; + } +#endif + ok( pRtlUlonglongByteSwap != NULL, "RtlUlonglongByteSwap is not available\n"); if ( pRtlUlonglongByteSwap ) {