diff options
Diffstat (limited to 'waterfox/mozilla-1005640-accept-lang.patch')
-rw-r--r-- | waterfox/mozilla-1005640-accept-lang.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/waterfox/mozilla-1005640-accept-lang.patch b/waterfox/mozilla-1005640-accept-lang.patch new file mode 100644 index 0000000..29d3833 --- /dev/null +++ b/waterfox/mozilla-1005640-accept-lang.patch @@ -0,0 +1,30 @@ +diff -up firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm.1005640-accept-lang firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm +--- firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm.1005640-accept-lang 2017-01-16 17:16:52.000000000 +0100 ++++ firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm 2017-01-18 12:35:29.380394216 +0100 +@@ -2852,6 +2852,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"); + +@@ -2880,6 +2885,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({ |