English stringbundle loaded despite non-English application locale with active language pack

RESOLVED WORKSFORME

Status

()

RESOLVED WORKSFORME
4 years ago
3 months ago

People

(Reporter: aryx, Unassigned)

Tracking

30 Branch
x86_64
Windows 8.1
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

Created attachment 8439079 [details]
screenshot of mixed English and German strings

Firefox 30.0 on Windows 8.1 64 bit

When I get a doorhanger, e.g. for mixed content blocking at https://ie.microsoft.com/testdrive/browser/mixedcontent/assets/woodgrove.htm , some strings are in English and some in German (see screenshot).

Firefox itself has been installed as the en-US version with a German language pack (locale code "de") on top which has also been activated before this session.

The strings still in English are loaded with JavaScript.

Loading the source again returns the German strings, so it seems the stringbundle gets loaded to early. The issue also applies to e.g. plugin blocking.

let stringbundlefoo = document.createElement("stringbundle");
stringbundlefoo.setAttribute("id", "bundle_browser_foo");
stringbundlefoo.setAttribute("src", "chrome://browser/locale/browser.properties");
document.getElementById("stringbundleset").appendChild(stringbundlefoo);
let browserBundleCreated = document.getElementById("bundle_browser_foo");
let browserBundle = document.getElementById("bundle_browser");
let brandBundle = document.getElementById("bundle_brand");
let brandShortName = brandBundle.getString("brandShortName");
let messageStringStart = gNavigatorBundle.getFormattedString("mixedContentBlocked.message", [brandShortName]);
let messageStringNow = browserBundle.getFormattedString("mixedContentBlocked.message", [brandShortName]);
let messageStringCreated = browserBundleCreated.getFormattedString("mixedContentBlocked.message", [brandShortName]);

messageStringStart and messageStringNow return the English text, messageStringCreated the German one

Components.classes["@mozilla.org/intl/nslocaleservice;1"].
  getService(Components.interfaces.nsILocaleService).
  getApplicationLocale().getCategory("NSILOCALE_COLLATE")
returns "de-DE"

I can't reproduce the issue in slim profiles.
Can you still reproduce this bug in recent builds? I would assume it was solved by the work around internationalization.

P.S. What is a "slim profile"?
Flags: needinfo?(aryx.bugmail)
Looks like a race similar to bug 1236347.

"Slim profile" should have meant the affected profile with all add-ons disabled or uninstalled, maybe also preferences reset with safe mode.
Status: NEW → RESOLVED
Last Resolved: 3 months ago
Flags: needinfo?(aryx.bugmail)
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.