summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2013-09-10 19:16:33 +0200
committerEike Rathke <erack@redhat.com>2013-09-10 19:25:27 +0200
commit7dc7d77cd0b142ea3fde93368334d1e4909d94da (patch)
tree9e7d75c04e6f12a07f868c11d4aef8b6eb137576
parent486353651aee653b149170013c7e1d168644f508 (diff)
include language-only in ISO-only fallback strings
Change-Id: I6da1b2b46c724c72bff3b1ee9739f2625a0321c2
-rw-r--r--i18nlangtag/qa/cppunit/test_languagetag.cxx5
-rw-r--r--i18nlangtag/source/languagetag/languagetag.cxx1
2 files changed, 6 insertions, 0 deletions
diff --git a/i18nlangtag/qa/cppunit/test_languagetag.cxx b/i18nlangtag/qa/cppunit/test_languagetag.cxx
index 6fb0de282d8f..5ddc9b8d6e7b 100644
--- a/i18nlangtag/qa/cppunit/test_languagetag.cxx
+++ b/i18nlangtag/qa/cppunit/test_languagetag.cxx
@@ -209,6 +209,11 @@ void TestLanguageTag::testAllTags()
CPPUNIT_ASSERT( de_DE.getCountry() == "DE" );
CPPUNIT_ASSERT( de_DE.getScript() == "" );
CPPUNIT_ASSERT( de_DE.getLanguageAndScript() == "de" );
+ ::std::vector< OUString > de_DE_Fallbacks( de_DE.getFallbackStrings( true));
+ CPPUNIT_ASSERT( de_DE_Fallbacks.size() == 2);
+ CPPUNIT_ASSERT( de_DE_Fallbacks[0] == "de-DE");
+ CPPUNIT_ASSERT( de_DE_Fallbacks[1] == "de");
+ CPPUNIT_ASSERT( de_DE.makeFallback().getBcp47() == "de-DE");
}
{
diff --git a/i18nlangtag/source/languagetag/languagetag.cxx b/i18nlangtag/source/languagetag/languagetag.cxx
index 40098a95db40..b35683315640 100644
--- a/i18nlangtag/source/languagetag/languagetag.cxx
+++ b/i18nlangtag/source/languagetag/languagetag.cxx
@@ -1238,6 +1238,7 @@ LanguageTag & LanguageTag::makeFallback()
else if (aCountry != "CN")
aVec.push_back( aLanguage + "-CN");
}
+ aVec.push_back( aLanguage);
}
else if (bIncludeFullBcp47)
aVec.push_back( aLanguage);