diff options
Diffstat (limited to 'i18nlangtag/source/languagetag/languagetag.cxx')
-rw-r--r-- | i18nlangtag/source/languagetag/languagetag.cxx | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/i18nlangtag/source/languagetag/languagetag.cxx b/i18nlangtag/source/languagetag/languagetag.cxx index b35683315640..3e1b33191086 100644 --- a/i18nlangtag/source/languagetag/languagetag.cxx +++ b/i18nlangtag/source/languagetag/languagetag.cxx @@ -1237,8 +1237,16 @@ LanguageTag & LanguageTag::makeFallback() aVec.push_back( aLanguage + "-TW"); else if (aCountry != "CN") aVec.push_back( aLanguage + "-CN"); + aVec.push_back( aLanguage); } - aVec.push_back( aLanguage); + else if (aLanguage == "ca" && aCountry == "XV") + { + ::std::vector< OUString > aCav( LanguageTag( "ca-ES-valencia").getFallbackStrings( true)); + aVec.insert( aVec.end(), aCav.begin(), aCav.end()); + // Already includes 'ca' language fallback. + } + else + aVec.push_back( aLanguage); } else if (bIncludeFullBcp47) aVec.push_back( aLanguage); |