Regression: broken locale in 0.9.25
Kirill K. Smirnov
lich at math.spbu.ru
Fri Nov 10 15:07:30 CST 2006
Hi, all!
The following patch:
http://www.winehq.org/pipermail/wine-cvs/2006-November/027599.html
breaks locale with wine.
I get several messages:
Warning: Language 'LC_CTYPE=ru_RU' was not recognized, defaulting to English.
Warning: Language 'LC_CTYPE=ru_RU' was not recognized, defaulting to English.
and, as result, fonts are broken too.
The reason is in the following piece of patch:
- if (((lang = getenv( "LC_ALL" )) && *lang) ||
- (env_str && (lang = getenv( env_str )) && *lang) ||
- ((lang = getenv( "LANG" )) && *lang) ||
- ((lang = user_locale) && *lang))
+ if ((lang = setlocale( category, NULL )) && *lang)
LC_ALL variable contains single locale, e.g. "ru_RU.KOI8-R", but function
setlocale(LC_ALL, NULL) returns:
LC_CTYPE=ru_RU.KOI8-R;LC_NUMERIC=ru_RU.KOI8-R;LC_TIME=ru_RU.KOI8-R;LC_COLLATE=C;LC_MONETARY=ru_RU.KOI8-R;LC_MESSAGES=ru_RU.KOI8-R;LC_PAPER=ru_RU.KOI8-R;LC_NAME=ru_RU.KOI8-R;LC_ADDRESS=ru_RU.KOI8-R;LC_TELEPHONE=ru_RU.KOI8-R;LC_MEASUREMENT=ru_RU.KOI8-R;LC_IDENTIFICATION=ru_RU.KOI8-R
which is incorrectly parsed.
-- Kirill K. Smirnov
More information about the wine-devel
mailing list