summaryrefslogtreecommitdiff
path: root/i18nlangtag
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2013-09-05 09:48:32 +0200
committerEike Rathke <erack@redhat.com>2013-09-05 09:49:17 +0200
commit51b810fbf78fa02e2b00dab596551a4f40dbff4b (patch)
treea466c1f66ade2f1e4e19b9574e8fd1c4e4fe3ba1 /i18nlangtag
parent78b97473f55bb55b901ecf6de12242f35553122c (diff)
for all other zh-XX also list zh-CN as fallback
Change-Id: Ie27e743e8fdb03332a72331a7ac2ce72b548fcbc
Diffstat (limited to 'i18nlangtag')
-rw-r--r--i18nlangtag/source/languagetag/languagetag.cxx12
1 files changed, 9 insertions, 3 deletions
diff --git a/i18nlangtag/source/languagetag/languagetag.cxx b/i18nlangtag/source/languagetag/languagetag.cxx
index f2f2becb46cd..3491d0a9d5f0 100644
--- a/i18nlangtag/source/languagetag/languagetag.cxx
+++ b/i18nlangtag/source/languagetag/languagetag.cxx
@@ -1229,9 +1229,15 @@ LanguageTag & LanguageTag::makeFallback()
if (!aCountry.isEmpty())
{
aVec.push_back( aLanguage + "-" + aCountry);
- // For zh-HK or zh-MO also list zh-TW
- if (aLanguage == "zh" && (aCountry == "HK" || aCountry == "MO"))
- aVec.push_back( aLanguage + "-TW");
+ if (aLanguage == "zh")
+ {
+ // For zh-HK or zh-MO also list zh-TW, for all other zh-XX also
+ // list zh-CN.
+ if (aCountry == "HK" || aCountry == "MO")
+ aVec.push_back( aLanguage + "-TW");
+ else if (aCountry != "CN")
+ aVec.push_back( aLanguage + "-CN");
+ }
}
aVec.push_back( aLanguage);
return aVec;