aboutsummaryrefslogtreecommitdiff
path: root/src/corelib/i18n/mlocale.cpp
diff options
context:
space:
mode:
authorMike FABIAN <mike.fabian@basyskom.de>2010-05-18 12:08:01 +0200
committerMike FABIAN <mike.fabian@basyskom.de>2010-05-18 14:24:43 +0200
commit962cbdd7f05f851a51791f8a9e92b18d36d7eadf (patch)
treea734a8089d87c5e120fba6feaa5b0af4fceec547 /src/corelib/i18n/mlocale.cpp
parentfe0af18e32bce03a487998962a16624b278f82b3 (diff)
Changes: fix MLocale::languageEndonym() and MLocale::countryEndonym() for ICU 4.4
RevBy: TrustMe Details: Compare to ICU 4.2, some resource bundles have moved in ICU 4.4.
Diffstat (limited to 'src/corelib/i18n/mlocale.cpp')
-rw-r--r--src/corelib/i18n/mlocale.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/corelib/i18n/mlocale.cpp b/src/corelib/i18n/mlocale.cpp
index 81bf2034..af8d4afd 100644
--- a/src/corelib/i18n/mlocale.cpp
+++ b/src/corelib/i18n/mlocale.cpp
@@ -1846,7 +1846,13 @@ QString MLocale::languageEndonym() const
Q_D(const MLocale);
UErrorCode status = U_ZERO_ERROR;
+ // TODO: implement a workaround for
+ // http://site.icu-project.org/design/resbund/issues
+#if (U_ICU_VERSION_MAJOR_NUM > 4) || (U_ICU_VERSION_MAJOR_NUM == 4 && U_ICU_VERSION_MINOR_NUM >=4)
+ UResourceBundle *res = ures_open("ICUDATA-lang", qPrintable(d->_defaultLocale), &status);
+#else
UResourceBundle *res = ures_open(NULL, qPrintable(d->_defaultLocale), &status);
+#endif
if (U_FAILURE(status)) {
mDebug("MLocale") << "Error ures_open" << u_errorName(status);
}
@@ -1878,7 +1884,13 @@ QString MLocale::countryEndonym() const
Q_D(const MLocale);
UErrorCode status = U_ZERO_ERROR;
+ // TODO: implement a workaround for
+ // http://site.icu-project.org/design/resbund/issues
+#if (U_ICU_VERSION_MAJOR_NUM > 4) || (U_ICU_VERSION_MAJOR_NUM == 4 && U_ICU_VERSION_MINOR_NUM >=4)
+ UResourceBundle *res = ures_open("ICUDATA-region", qPrintable(d->_defaultLocale), &status);
+#else
UResourceBundle *res = ures_open(NULL, qPrintable(d->_defaultLocale), &status);
+#endif
if (U_FAILURE(status)) {
mDebug("MLocale") << "Error ures_open" << u_errorName(status);
}