From 3d86d5eed99ba2ebe4b68ce41a397f3ceb031352 Mon Sep 17 00:00:00 2001 From: Mohammad Amin Mollazadeh Date: Sat, 13 Jun 2026 10:31:58 +0330 Subject: [PATCH] [SHCORE] IsOS(OS_XPORGREATER) should return TRUE on NT 6.0+ (#9196) CORE-20577 Even though the official documentation[^1] says `IsOS(OS_XPORGREATER)` always returns FALSE, the tests show otherwise and there are application compatibility issues otherwise. [^1]: https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-isos --- dll/win32/shcore/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dll/win32/shcore/main.c b/dll/win32/shcore/main.c index 79e8949b295..58c285a59c8 100644 --- a/dll/win32/shcore/main.c +++ b/dll/win32/shcore/main.c @@ -2464,7 +2464,11 @@ BOOL WINAPI IsOS(DWORD feature) case OS_MEORGREATER: ISOS_RETURN(platform == VER_PLATFORM_WIN32_WINDOWS && minorv >= 90); case OS_XPORGREATER: +#ifdef __REACTOS__ + ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && ((majorv >= 5 && minorv >= 1) || majorv >= 6)); +#else ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5 && minorv >= 1); +#endif /* __REACTOS__ */ case OS_HOME: ISOS_RETURN(platform == VER_PLATFORM_WIN32_NT && majorv >= 5 && minorv >= 1); case OS_PROFESSIONAL: