diff options
Diffstat (limited to 'unotools/source/config/fontcfg.cxx')
-rw-r--r-- | unotools/source/config/fontcfg.cxx | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/unotools/source/config/fontcfg.cxx b/unotools/source/config/fontcfg.cxx index ef94981d7746..371084708084 100644 --- a/unotools/source/config/fontcfg.cxx +++ b/unotools/source/config/fontcfg.cxx @@ -299,7 +299,8 @@ FontSubstConfiguration& FontSubstConfiguration::get() */ FontSubstConfiguration::FontSubstConfiguration() : - maSubstHash( 300 ) + maSubstHash( 300 ), + maLanguageTag("en") { if (utl::ConfigManager::IsFuzzing()) return; @@ -339,6 +340,9 @@ FontSubstConfiguration::FontSubstConfiguration() : } SAL_INFO("unotools.config", "config provider: " << m_xConfigProvider.is() << ", config access: " << m_xConfigAccess.is()); + + if( maLanguageTag.isSystemLocale() ) + maLanguageTag = SvtSysLocale().GetUILanguageTag(); } /* @@ -1042,13 +1046,8 @@ const FontNameAttr* FontSubstConfiguration::getSubstInfo( const OUString& rFontN FontNameAttr aSearchAttr; aSearchAttr.Name = aSearchFont; - LanguageTag aLanguageTag("en"); - - if( aLanguageTag.isSystemLocale() ) - aLanguageTag = SvtSysLocale().GetUILanguageTag(); - - ::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings( true)); - if (aLanguageTag.getLanguage() != "en") + ::std::vector< OUString > aFallbacks( maLanguageTag.getFallbackStrings( true)); + if (maLanguageTag.getLanguage() != "en") aFallbacks.emplace_back("en"); for (const auto& rFallback : aFallbacks) |