Blame firefox-51-mozilla-1005640.patch
|
buc |
10d2145 |
diff -up firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm.1005640-accept-lang firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm
|
|
buc |
10d2145 |
--- firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm.1005640-accept-lang 2017-01-16 17:16:52.000000000 +0100
|
|
buc |
10d2145 |
+++ firefox-51.0/toolkit/mozapps/extensions/internal/XPIProvider.jsm 2017-01-18 12:35:29.380394216 +0100
|
|
buc |
10d2145 |
@@ -2852,6 +2852,11 @@ this.XPIProvider = {
|
|
buc |
4235987 |
this.addAddonsToCrashReporter();
|
|
buc |
4235987 |
}
|
|
buc |
4235987 |
|
|
buc |
4235987 |
+ // Save locale settings to compare it later to check whenever some addon
|
|
buc |
4235987 |
+ // changed it.
|
|
buc |
4235987 |
+ var previousLocale = Cc["@mozilla.org/chrome/chrome-registry;1"]
|
|
buc |
4235987 |
+ .getService(Ci.nsIXULChromeRegistry).getSelectedLocale("global");
|
|
buc |
4235987 |
+
|
|
buc |
4235987 |
try {
|
|
buc |
4235987 |
AddonManagerPrivate.recordTimestamp("XPI_bootstrap_addons_begin");
|
|
buc |
10d2145 |
|
|
buc |
10d2145 |
@@ -2880,6 +2885,14 @@ this.XPIProvider = {
|
|
buc |
4235987 |
AddonManagerPrivate.recordException("XPI-BOOTSTRAP", "startup failed", e);
|
|
buc |
4235987 |
}
|
|
buc |
4235987 |
|
|
buc |
4235987 |
+ var currentLocale = Cc["@mozilla.org/chrome/chrome-registry;1"]
|
|
buc |
4235987 |
+ .getService(Ci.nsIXULChromeRegistry).getSelectedLocale("global");
|
|
buc |
4235987 |
+ if (currentLocale != previousLocale) {
|
|
buc |
4235987 |
+ // We have to flush string cache if the locale was changed during loading
|
|
buc |
4235987 |
+ // of addons
|
|
buc |
4235987 |
+ Services.obs.notifyObservers(null, "chrome-flush-caches", null);
|
|
buc |
4235987 |
+ }
|
|
buc |
4235987 |
+
|
|
buc |
4235987 |
// Let these shutdown a little earlier when they still have access to most
|
|
buc |
4235987 |
// of XPCOM
|
|
buc |
4235987 |
Services.obs.addObserver({
|