forked from pool/MozillaFirefox
4a13134b83
* Default search engine changed to Yahoo! for North America * Default search engine changed to Yandex for Belarusian, Kazakh, and Russian locales * Improved search bar (en-US only) * Firefox Hello real-time communication client * Easily switch themes/personas directly in the Customizing mode * Implementation of HTTP/2 (draft14) and ALPN * Disabled SSLv3 * MFSA 2014-83/CVE-2014-1587/CVE-2014-1588 Miscellaneous memory safety hazards * MFSA 2014-84/CVE-2014-1589 (bmo#1043787) XBL bindings accessible via improper CSS declarations * MFSA 2014-85/CVE-2014-1590 (bmo#1087633) XMLHttpRequest crashes with some input streams * MFSA 2014-86/CVE-2014-1591 (bmo#1069762) CSP leaks redirect data via violation reports * MFSA 2014-87/CVE-2014-1592 (bmo#1088635) Use-after-free during HTML5 parsing * MFSA 2014-88/CVE-2014-1593 (bmo#1085175) Buffer overflow while parsing media content * MFSA 2014-89/CVE-2014-1594 (bmo#1074280) Bad casting from the BasicThebesLayer to BasicContainerLayer - rebased patches - limit linker memory usage for %ix86 OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=415
49 lines
1.7 KiB
Diff
49 lines
1.7 KiB
Diff
# HG changeset patch
|
|
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
|
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
|
|
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
|
|
|
|
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
|
--- a/intl/locale/nsLocaleService.cpp
|
|
+++ b/intl/locale/nsLocaleService.cpp
|
|
@@ -122,16 +122,17 @@ nsLocaleService::nsLocaleService(void)
|
|
nsRefPtr<nsLocale> resultLocale(new nsLocale());
|
|
NS_ENSURE_TRUE_VOID(resultLocale);
|
|
|
|
#ifdef MOZ_WIDGET_QT
|
|
const char* lang = QLocale::system().name().toUtf8();
|
|
#else
|
|
// Get system configuration
|
|
const char* lang = getenv("LANG");
|
|
+ const char* language = getenv("LANGUAGE");
|
|
#endif
|
|
|
|
nsAutoString xpLocale, platformLocale;
|
|
nsAutoString category, category_platform;
|
|
int i;
|
|
|
|
for( i = 0; i < LocaleListLength; i++ ) {
|
|
nsresult result;
|
|
@@ -150,16 +151,21 @@ nsLocaleService::nsLocaleService(void)
|
|
} else {
|
|
CopyASCIItoUTF16(lang, platformLocale);
|
|
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
|
|
}
|
|
}
|
|
if (NS_FAILED(result)) {
|
|
return;
|
|
}
|
|
+ // LANGUAGE is overriding LC_MESSAGES
|
|
+ if (i == LC_MESSAGES && language && *language) {
|
|
+ CopyASCIItoUTF16(language, platformLocale);
|
|
+ result = nsPosixLocale::GetXPLocale(language, xpLocale);
|
|
+ }
|
|
resultLocale->AddCategory(category, xpLocale);
|
|
resultLocale->AddCategory(category_platform, platformLocale);
|
|
}
|
|
mSystemLocale = do_QueryInterface(resultLocale);
|
|
mApplicationLocale = do_QueryInterface(resultLocale);
|
|
|
|
#endif // XP_UNIX
|
|
|