Dmitry Timoshkov wrote:
"Shachar Shemesh" wine-devel@shemesh.biz wrote:
With my patch LC_CTYPE affects the "system default locale". LC_ALL, LANGUAGE (a mistake, I think, but couldn't convince Alexandre), and LANG affect the "user locale". Hence - there are two locales in the Windows world. If we implement the MUI interfaces, we will actually have three.
No. GetACP() returns exactly one value, initialized at the boot time, and CP_ACP pseudo code page used by multibyte<->unicode conversions is that only one active locale I mentioned above. You can't solve your problem by just using terms "system" and "user" locale, that changes nothing.
Frankly, I'm not sure what problem that is. Dmitry, please explain what you find wrong with this patch.
Windows has a property called "system locale". This property affects what codepage is used for non-unicode applications.
Unix has an almost identical property, which selects how to interpret a string of bytes. This is selected by LC_ALL if it's defined, if not then by LC_CTYPE if it's defined, and if that's not defined then by LANG (man 7 locale).
My patch initializes system locale according to LC_ALL if it's defined, LC_CTYPE if not, and LANG if both are not defined.
Can you please explain what you see as wrong with that?
Shachar