From 111fd75c5873a1b6280f16e44551dc89161a03e7 Mon Sep 17 00:00:00 2001 From: Jan Horak Date: Oct 03 2016 09:15:55 +0000 Subject: Fixing accept-lang problems when non-english locale, disable rust on i686 --- diff --git a/firefox.spec b/firefox.spec index 095315f..a336d8b 100644 --- a/firefox.spec +++ b/firefox.spec @@ -44,7 +44,7 @@ %define build_with_rust 0 %if 0%{?fedora} > 23 -%ifarch %{ix86} x86_64 armv7hl +%ifarch x86_64 armv7hl %define build_with_rust 1 %endif %endif @@ -130,6 +130,7 @@ Patch219: rhbz-1173156.patch Patch221: firefox-fedora-ua.patch Patch223: rhbz-1291190-appchooser-crash.patch Patch224: mozilla-1170092.patch +Patch225: mozilla-1005640-accept-lang.patch # Upstream patches Patch304: mozilla-1253216.patch @@ -273,6 +274,7 @@ cd %{tarballdir} %patch223 -p1 -b .appchooser-crash %endif %patch224 -p1 -b .1170092 +%patch225 -p1 -b .1005640-accept-lang %patch304 -p1 -b .1253216 %patch402 -p1 -b .1196777 %patch406 -p1 -b .256180 @@ -784,6 +786,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %changelog * Mon Sep 26 2016 Jan Horak - 49.0-3 - Build with rust where possible +- Added fix for wrong accept-language headers when running with non-english locales * Mon Sep 19 2016 Martin Stransky - 49.0-2 - Update to Firefox 49 (B4) diff --git a/mozilla-1005640-accept-lang.patch b/mozilla-1005640-accept-lang.patch new file mode 100644 index 0000000..6b93928 --- /dev/null +++ b/mozilla-1005640-accept-lang.patch @@ -0,0 +1,30 @@ +diff -up firefox-48.0.1/toolkit/mozapps/extensions/internal/XPIProvider.jsm.mydebug firefox-48.0.1/toolkit/mozapps/extensions/internal/XPIProvider.jsm +--- firefox-48.0.1/toolkit/mozapps/extensions/internal/XPIProvider.jsm.mydebug 2016-08-15 23:35:40.000000000 +0200 ++++ firefox-48.0.1/toolkit/mozapps/extensions/internal/XPIProvider.jsm 2016-09-21 16:08:04.441220821 +0200 +@@ -2724,6 +2724,11 @@ this.XPIProvider = { + this.addAddonsToCrashReporter(); + } + ++ // Save locale settings to compare it later to check whenever some addon ++ // changed it. ++ var previousLocale = Cc["@mozilla.org/chrome/chrome-registry;1"] ++ .getService(Ci.nsIXULChromeRegistry).getSelectedLocale("global"); ++ + try { + AddonManagerPrivate.recordTimestamp("XPI_bootstrap_addons_begin"); + for (let id in this.bootstrappedAddons) { +@@ -2751,6 +2756,14 @@ this.XPIProvider = { + AddonManagerPrivate.recordException("XPI-BOOTSTRAP", "startup failed", e); + } + ++ var currentLocale = Cc["@mozilla.org/chrome/chrome-registry;1"] ++ .getService(Ci.nsIXULChromeRegistry).getSelectedLocale("global"); ++ if (currentLocale != previousLocale) { ++ // We have to flush string cache if the locale was changed during loading ++ // of addons ++ Services.obs.notifyObservers(null, "chrome-flush-caches", null); ++ } ++ + // Let these shutdown a little earlier when they still have access to most + // of XPCOM + Services.obs.addObserver({