Kaydet (Commit) f3e124f4 authored tarafından Eike Rathke's avatar Eike Rathke

moved privateuse handling to convertLanguageToLocaleImpl()

Change-Id: Id9cdd5734f54fd4fca43f5e0d928d9cb37e8f63f
üst 22c19620
......@@ -23,6 +23,7 @@
#include <rtl/strbuf.hxx>
#include "i18nlangtag/mslangid.hxx"
#include "i18nlangtag/languagetag.hxx"
// =======================================================================
......@@ -670,6 +671,7 @@ void MsLangId::Conversion::convertLanguageToLocaleImpl( LanguageType nLang,
{
rLocale.Language = OUString::createFromAscii( pEntry->maLangStr );
rLocale.Country = OUString::createFromAscii( pEntry->maCountry );
rLocale.Variant = OUString();
return;
}
++pEntry;
......@@ -686,6 +688,7 @@ void MsLangId::Conversion::convertLanguageToLocaleImpl( LanguageType nLang,
{
rLocale.Language = OUString::createFromAscii( pNoneStdEntry->maLangStr );
rLocale.Country = OUString::createFromAscii( pNoneStdEntry->maCountry );
rLocale.Variant = OUString();
return;
}
++pNoneStdEntry;
......@@ -698,17 +701,19 @@ void MsLangId::Conversion::convertLanguageToLocaleImpl( LanguageType nLang,
{
if ( pPrivateEntry->mnLang == nLang )
{
rLocale.Language = OUString::createFromAscii( pPrivateEntry->mpLangStr );
rLocale.Language = I18NLANGTAG_QLT;
rLocale.Country = OUString();
rLocale.Variant = OUString::createFromAscii( pPrivateEntry->mpLangStr );
return;
}
++pPrivateEntry;
}
while ( pPrivateEntry->mnLang != LANGUAGE_DONTKNOW );
// not found
// Not found. The effective result is the empty SYSTEM locale.
rLocale.Language = OUString();
rLocale.Country = OUString();
rLocale.Variant = OUString();
}
// -----------------------------------------------------------------------
......
......@@ -156,13 +156,6 @@ LanguageType MsLangId::resolveSystemLanguageByScriptType( LanguageType nLang, sa
if (bResolveSystem || nLang == LANGUAGE_DONTKNOW)
nLang = MsLangId::getRealLanguage( nLang);
convertLanguageToLocaleImpl( nLang, aLocale);
/* FIXME: this x-... is temporary until conversion will be moved up to
* LanguageTag. Also handle the nasty "*" joker as privateuse. */
if (aLocale.Language.startsWith( "x-") || (aLocale.Language == "*"))
{
aLocale.Variant = aLocale.Language;
aLocale.Language = "qlt";
}
}
return aLocale;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment