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.
I think the root cause for this is:
toolkit/ modules/ Preferences. jsm:
_get: function(prefName, defaultValue) { prefSvc. getPrefType( prefName) ) { h.PREF_ STRING: getComplexValue (prefName, Ci.nsISupportsS tring). data;
switch (this._
case Ci.nsIPrefBranc
return this._prefSvc.
In the case of localizable prefs, that should be gCV(prefName, Ci.nsIPrefLocal izedString) 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.