[PATCH] ntdll/tests: TZinfo sometimes does not get a MUI string.

Francois Gouget fgouget at codeweavers.com
Mon Jul 5 11:09:37 CDT 2021


RtlQuery*TimeZoneInformation() should return a MUI string but
there are rare cases where it does not in Windows 10 2004.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
---
Specifically this is the case for w10pro64. But the same Windows version 
with just the language packs installed behaves as expected. Yet the 
ntdll version did not change so it should not be that 
RtlQuery*TimeZoneInformation() behaves differently.
---
 dlls/ntdll/tests/time.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/dlls/ntdll/tests/time.c b/dlls/ntdll/tests/time.c
index 90737521a4d..ee683e9a0aa 100644
--- a/dlls/ntdll/tests/time.c
+++ b/dlls/ntdll/tests/time.c
@@ -234,10 +234,12 @@ static void test_RtlQueryTimeZoneInformation(void)
     status = pRtlQueryDynamicTimeZoneInformation(&tzinfo);
     ok(status == STATUS_SUCCESS,
        "RtlQueryDynamicTimeZoneInformation failed, got %08x\n", status);
-    ok(tzinfo.StandardName[0] == '@',
+    ok(tzinfo.StandardName[0] == '@' ||
+       broken(tzinfo.StandardName[0]), /* some win10 2004 */
        "standard time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.StandardName));
-    ok(tzinfo.DaylightName[0] == '@',
+    ok(tzinfo.DaylightName[0] == '@' ||
+       broken(tzinfo.DaylightName[0]), /* some win10 2004 */
        "daylight time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.DaylightName));
 
@@ -251,10 +253,12 @@ static void test_RtlQueryTimeZoneInformation(void)
     status = pRtlQueryTimeZoneInformation((RTL_TIME_ZONE_INFORMATION *)&tzinfo);
     ok(status == STATUS_SUCCESS,
        "RtlQueryTimeZoneInformation failed, got %08x\n", status);
-    ok(tzinfo.StandardName[0] == '@',
+    ok(tzinfo.StandardName[0] == '@' ||
+       broken(tzinfo.StandardName[0]), /* some win10 2004 */
        "standard time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.StandardName));
-    ok(tzinfo.DaylightName[0] == '@',
+    ok(tzinfo.DaylightName[0] == '@' ||
+       broken(tzinfo.DaylightName[0]), /* some win10 2004 */
        "daylight time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.DaylightName));
 
@@ -262,10 +266,12 @@ static void test_RtlQueryTimeZoneInformation(void)
     status = pRtlQueryTimeZoneInformation((RTL_TIME_ZONE_INFORMATION *)&tzinfo);
     ok(status == STATUS_SUCCESS,
        "RtlQueryTimeZoneInformation failed, got %08x\n", status);
-    ok(tzinfo.StandardName[0] == '@',
+    ok(tzinfo.StandardName[0] == '@' ||
+       broken(tzinfo.StandardName[0]), /* some win10 2004 */
        "standard time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.StandardName));
-    ok(tzinfo.DaylightName[0] == '@',
+    ok(tzinfo.DaylightName[0] == '@' ||
+       broken(tzinfo.DaylightName[0]), /* some win10 2004 */
        "daylight time zone name isn't an indirect string, got %s\n",
        wine_dbgstr_w(tzinfo.DaylightName));
 
-- 
2.20.1




More information about the wine-devel mailing list