summaryrefslogtreecommitdiff
path: root/i18nlangtag
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2015-08-22 00:48:41 +0200
committerEike Rathke <erack@redhat.com>2015-08-22 00:50:12 +0200
commit395e67764c412acbefeb92d1d2a8cb097c18b7fd (patch)
tree1b0f7f1bc25d23ef6616b607307e2410ff8e07c8 /i18nlangtag
parent11b8a74d78e018c67217c05d83bd4947869e535a (diff)
disentangle the Dzongkha mess a little
As per [MS-LCID] rev. 7.0 2015-06-30 Change-Id: If4980d2b1149d93b39e5b57f5741bbdfb5680516
Diffstat (limited to 'i18nlangtag')
-rw-r--r--i18nlangtag/source/isolang/isolang.cxx5
-rw-r--r--i18nlangtag/source/isolang/mslangid.cxx10
-rw-r--r--i18nlangtag/source/languagetag/languagetag.cxx2
3 files changed, 14 insertions, 3 deletions
diff --git a/i18nlangtag/source/isolang/isolang.cxx b/i18nlangtag/source/isolang/isolang.cxx
index 02b6fb0e318f..bbfb34cf464a 100644
--- a/i18nlangtag/source/isolang/isolang.cxx
+++ b/i18nlangtag/source/isolang/isolang.cxx
@@ -394,8 +394,9 @@ static IsoLanguageCountryEntry const aImplIsoLangEntries[] =
{ LANGUAGE_TAJIK_LSO, "tg", "" , 0 },
{ LANGUAGE_TIBETAN, "bo", "CN", 0 }, // CN politically correct?
{ LANGUAGE_USER_TIBETAN_INDIA, "bo", "IN", 0 },
- { LANGUAGE_USER_TIBETAN_BHUTAN, "bo", "BT", 0 }, // MS reserved, but with the ID error instead
- { LANGUAGE_DZONGKHA, "dz", "BT", 0 },
+ { LANGUAGE_USER_TIBETAN_BHUTAN, "bo", "BT", 0 },
+ { LANGUAGE_DZONGKHA_BHUTAN, "dz", "BT", 0 },
+ { LANGUAGE_TIBETAN_BHUTAN, "dz", "BT", 0 }, // MS reserved for bo-BT, but LCID was used as Dzongkha, see #i53497#
{ LANGUAGE_USER_DZONGKHA_MAP_LONLY, "dz", "" , 0 }, // because of the MS error, see lang.h
{ LANGUAGE_TURKMEN, "tk", "TM", 0 },
{ LANGUAGE_WELSH, "cy", "GB", 0 },
diff --git a/i18nlangtag/source/isolang/mslangid.cxx b/i18nlangtag/source/isolang/mslangid.cxx
index 3cc456da9db0..2b3ef350149e 100644
--- a/i18nlangtag/source/isolang/mslangid.cxx
+++ b/i18nlangtag/source/isolang/mslangid.cxx
@@ -569,6 +569,16 @@ LanguageType MsLangId::getReplacementForObsoleteLanguage( LanguageType nLang, bo
case LANGUAGE_SPANISH_DATED:
nLang = LANGUAGE_SPANISH_MODERN;
break;
+
+ // The erroneous Tibetan vs. Dzongkha case, #i53497#
+ // We (and MS) have stored LANGUAGE_TIBETAN_BHUTAN. This will need
+ // special attention if MS one day decides to actually use
+ // LANGUAGE_TIBETAN_BHUTAN for bo-BT instead of having it reserved;
+ // then remove the mapping and hope every dz-BT user used ODF to store
+ // documents ;-)
+ case LANGUAGE_TIBETAN_BHUTAN:
+ nLang = LANGUAGE_DZONGKHA_BHUTAN;
+ break;
}
return nLang;
}
diff --git a/i18nlangtag/source/languagetag/languagetag.cxx b/i18nlangtag/source/languagetag/languagetag.cxx
index 34eaeb8bb2f9..de31afeb84db 100644
--- a/i18nlangtag/source/languagetag/languagetag.cxx
+++ b/i18nlangtag/source/languagetag/languagetag.cxx
@@ -3072,7 +3072,7 @@ LanguageTag makeLanguageTagFromAppleLanguageId(AppleLanguageId nLanguage)
nLang = LANGUAGE_UIGHUR_CHINA;
break;
case AppleLanguageId::DZONGKHA:
- nLang = LANGUAGE_DZONGKHA;
+ nLang = LANGUAGE_DZONGKHA_BHUTAN;
break;
case AppleLanguageId::JAVANESE_LATIN:
return LanguageTag("jv-Latn");