https://bugs.winehq.org/show_bug.cgi?id=54149
Bug ID: 54149 Summary: shlwapi:ordinal - test_SHFormatDateTimeA() fails on the mixed locales configuration Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: shlwapi Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com Distribution: ---
test_SHFormatDateTimeA() fails on the mixed locales configuration:
ordinal.c:1765: Test failed: expected (mercredi 14 décembre 2022), got (mercredi 14 decembre 2022) ordinal.c:1773: Test failed: expected (mercredi 14 décembre 2022), got (mercredi 14 decembre 2022) ordinal.c:1787: Test failed: expected (mercredi 14 décembre 2022) got (mercredi 14 decembre 2022) for date part ordinal.c:1801: Test failed: expected (mercredi 14 décembre 2022) got (mercredi 14 decembre 2022) for date part
See https://test.winehq.org/data/patterns.html#shlwapi:ordinal
All was fine until 2022-12-09. Then on the 11th I let the TestBot rebuild the snapshot [1] to ensure that Internet time synchronization would be disabled to fix random failures in other tests. And on the 12th this test started failing: the date lost its e-acute!
Yet the WineTest system information shows that none of the locale settings changed, not even the code page. Before and after they are:
SystemDefaultLCID 0411 UserDefaultLCID 040c ThreadLocale 0411 SystemPreferredUILanguages 0412,0409 UserDefaultUILanguage 0412 ThreadUILanguage 0412 Country 231 ACP 932
The test did not change and the binary from the 9th has the same failure. So it is some obscure Windows setting that changed for some unknown reason.
Furthermore given that the code page is 932 I would expect the plain 'e' to be the more correct result. Unfortunately there is no record of what the result was before the test started failing. Is it possible for SHFormatDateTimeA() and GetDateFormatA() to use different code pages?
[1] It goes like this: that VM has a 'langs' powered-off snapshot with all the locales installed. This snapshot has not changed since 2022-04-24. From this the TestBot produces the 'langs-mx-MX-live' live snapshot using LibvirtTool.pl and SetWinLocale to change the locale settings.