Piotr Caban (@piotr) commented about dlls/msvcrt/locale.c:
/* locale.nls contains "Norwegian Nynorsk" instead for LOCALE_SENGLANGUAGE */
strcpy( buf, "Norwegian-Nynorsk" );len = strlen( buf ) + 1;
wcscpy( wbuf, L"Norwegian-Nynorsk" );len = wcslen( wbuf ) + 1; }
else len += GetLocaleInfoA(lcid, LOCALE_SENGLANGUAGE|LOCALE_NOUSEROVERRIDE, buf, 256);buf[len-1] = '_';len += GetLocaleInfoA(lcid, LOCALE_SENGCOUNTRY|LOCALE_NOUSEROVERRIDE, &buf[len], 256-len);buf[len-1] = '.';sprintf(buf+len, "%d", cp);len += strlen(buf+len);
else+#endif
len += GetLocaleInfoEx(sname, LOCALE_SENGLANGUAGE|LOCALE_NOUSEROVERRIDE, wbuf, 256);
Since you're changing the code - how about changing 256 to ARRAY_SIZE(wbuf)?