summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--i18nlangtag/source/isolang/mslangid.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/i18nlangtag/source/isolang/mslangid.cxx b/i18nlangtag/source/isolang/mslangid.cxx
index 6e816ee3dde7..8f398e52d241 100644
--- a/i18nlangtag/source/isolang/mslangid.cxx
+++ b/i18nlangtag/source/isolang/mslangid.cxx
@@ -153,9 +153,17 @@ LanguageType MsLangId::resolveSystemLanguageByScriptType( LanguageType nLang, sa
{
// Still resolve LANGUAGE_DONTKNOW if resolving is not requested,
// but not LANGUAGE_SYSTEM or others.
+ LanguageType nOrigLang = nLang;
if (bResolveSystem || nLang == LANGUAGE_DONTKNOW)
nLang = MsLangId::getRealLanguage( nLang);
convertLanguageToLocaleImpl( nLang, aLocale);
+ if (bResolveSystem && aLocale.Language.isEmpty() && simplifySystemLanguages( nOrigLang) == LANGUAGE_SYSTEM)
+ {
+ // None found but resolve requested, last resort is "en-US".
+ aLocale.Language = "en";
+ aLocale.Country = "US";
+ aLocale.Variant = OUString();
+ }
}
return aLocale;
}