Jeff Zaroyko jeffzaroyko@gmail.com writes:
What is incorrect is that GetLocaleInfo is reading the override from the registry which it should not do hence the special casing where the value of sLanguage as a profile or registry entry is not the corresponding value for LOCALE_SLANGUAGE, but the corresponding value for LOCALE_SABBREVLANGNAME. In retrospect this is a side issue and probably requires further questioning of the existing way overrides are handled.
My point is that "sLanguage" apparently means LOCALE_SABBREVLANGNAME instead of LOCALE_SLANGUAGE, so you can just change that mapping and everything should work fine. I don't see why you'd need a special case for it.