Piotr Caban (@piotr) commented about dlls/msvcp140/tests/msvcp140.c:
+{ + int i; + FILE *f; + char *oldloc; + static const struct { + const char *loc; + const WCHAR *wpath; + const char *apath; + int is_todo; + } tests[] = { + { "C", L"utf_\x00e4\x00cf\x00f6\x00df.txt", "utf_\xe4\xcf\xf6\xdf.txt" }, + { "de_DE.utf8", L"utf_\x00e4\x00cf\x00f6\x00df.txt", "utf_\xc3\xa4\xc3\x8f\xc3\xb6\xc3\x9f.txt", TRUE }, + }; + + for(i=0; i<ARRAY_SIZE(tests); i++) { + oldloc = p_setlocale(LC_ALL, tests[i].loc); `setlocale` returns current locale, not the old one. Please also check if setlocale succeeds. Additionally, if I remember correctly, utf8 encoding was not supported in msvcr120.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/6680#note_85130