diff options
author | Eike Rathke <erack@redhat.com> | 2021-10-18 20:02:55 +0200 |
---|---|---|
committer | Michael Stahl <michael.stahl@allotropia.de> | 2021-10-19 11:00:36 +0200 |
commit | 1497f534c232c2a54e7031afb3088d28698bc5d3 (patch) | |
tree | aeb21e1cf555cf43a2fcdb9ed24da943dbec78d2 /svx | |
parent | b2d4e18de07891896a37405f151b80a1e0b0eab6 (diff) |
Related: tdf#145173 Ensure known supported system and default document locale
For an unsupported locale like {en-IL} that could had ended up as
language-only {en} if the aImplIsoLangEntries map contains such
entry as obtained through
MsLangId::convertUnxByteStringToLanguage() and
Conversion::convertIsoNamesToLanguage(). For the system locale in
SvtSysLocale a proper fallback is used but the default document
language was propagated as is
Other places evaluating MsLangId::getSystemLanguage() are affected
as well, those probably will have to be replaced by a call to
MsLangId::getRealLanguage(LANGUAGE_SYSTEM) or a newly to be
introduced MsLangId::getConfiguredSystemLanguage() and
MsLangId::getSystemLanguage() be made private or accessible only
by LanguageTag.
Change-Id: I87eb9456d5b4ea8d64b0c41fec6bd2739256fb56
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123756
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
(cherry picked from commit aec5312ffab24236876693d7a8b55843847f2a48)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123774
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Diffstat (limited to 'svx')
-rw-r--r-- | svx/source/dialog/langbox.cxx | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/svx/source/dialog/langbox.cxx b/svx/source/dialog/langbox.cxx index fcd9c54e3774..ca9344f32bc7 100644 --- a/svx/source/dialog/langbox.cxx +++ b/svx/source/dialog/langbox.cxx @@ -356,6 +356,8 @@ weld::ComboBoxEntry SvxLanguageBox::BuildEntry(const LanguageType nLangType, sal else if (nRealLang == LANGUAGE_USER_SYSTEM_CONFIG) { nRealLang = MsLangId::getSystemLanguage(); + // Whatever we obtained, ensure a known supported locale. + nRealLang = LanguageTag(nRealLang).makeFallback().getLanguageType(); aStrEntry += " - " + SvtLanguageTable::GetLanguageString( nRealLang ); } |