I think the root cause for this is:
toolkit/modules/Preferences.jsm:
_get: function(prefName, defaultValue) {
switch (this._prefSvc.getPrefType(prefName)) {
case Ci.nsIPrefBranch.PREF_STRING:
return this._prefSvc.getComplexValue(prefName,
Ci.nsISupportsString).data;
In the case of localizable prefs, that should be gCV(prefName,
Ci.nsIPrefLocalizedString) to get the right value. I think the code as written
will grab intl.properties instead of actually reading the real value.
But even that might be broken -- when syncing between two Firefoxes with
different locales.
I suspect there needs to be more sophisticated handling here altogether.
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to firefox in Ubuntu.
https://bugs.launchpad.net/bugs/643899
Title:
Firefox sending header "Accept-Language:
chrome://global/locale/intl.properties"
Status in The Mozilla Firefox Browser:
Confirmed
Status in “firefox” package in Ubuntu:
Fix Released
Status in “firefox” source package in Natty:
Fix Released
Status in “firefox” source package in Oneiric:
Fix Released
Bug description:
Binary package hint: firefox
Upgraded from Lucid to Maverick a bit ago, and now a recent update has
caused Firefox to start sending the wrong Accept-Language header.
Couldn't find an existing bug report, but I see it was discussed on
the forums: http://ubuntuforums.org/showthread.php?t=1536811
*** TEST CASE FOR SRU ***
As the original bug isn't easily reproducible, it isn't possible to
verify with 100% confidence that the update fixes the actual bug.
However, we can test with 100% confidence the bug which we *think* is
causing this bug here.
To prepare for this:
1) Install the extension-developer addon from
https://addons.mozilla.org/en-us/firefox/addon/extension-developer/
2) Open about:config, and ensure that "intl.accept_languages" does not have a
user value (it will have "default" in the status column and be set to a list of
language codes, such as "en-gb, en").
To test:
1) Open a JS shell (Tools -> Extension Developer -> Javascript Shell).
2) In the shell, click on the "enumerateWindows()" link
3) In the list of windows, click on "chrome://browser/content/browser.xul".
This puts us in main window context
4) Enter the following:
string=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
string.data="chrome://global/locale/intl.properties";
gPrefService.setComplexValue("intl.accept_languages", Ci.nsISupportsString,
string);
5) Check "intl.accept_languages" again in about:config
Expected result:
- With Firefox 4.0.1+build1+nobinonly-0ubuntu0.11.04.1, intl.accept_languages
will contain the value "chrome://global/locale/intl.properties", and the status
column will say "user set"
- With Firefox 4.0.1+build1+nobinonly-0ubuntu0.11.04.2, intl.accept_languages
should remain unchanged, and still display the default setting for your locale
ProblemType: BugDistroRelease: Ubuntu 10.10
Package: firefox 3.6.10+build1+nobinonly-0ubuntu2
ProcVersionSignature: Ubuntu 2.6.35-22.33-generic 2.6.35.4
Uname: Linux 2.6.35-22-generic x86_64
Architecture: amd64
CheckboxSubmission: fdbdfcded0c0bb479a6b52e9ec5af131
CheckboxSystem: edda5d4f616ca792bf437989cb597002
Date: Mon Sep 20 15:11:14 2010
EcryptfsInUse: Yes
FirefoxPackages:
firefox 3.6.10+build1+nobinonly-0ubuntu2
firefox-gnome-support 3.6.10+build1+nobinonly-0ubuntu2
firefox-branding 3.6.10+build1+nobinonly-0ubuntu2
abroswer N/A
abrowser-branding N/AInstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" -
Release amd64 (20100429)
ProcEnviron:
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bashSourcePackage: firefox
To manage notifications about this bug go to:
https://bugs.launchpad.net/firefox/+bug/643899/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp