Closed Bug 802022 Opened 12 years ago Closed 6 years ago

distribution preferences are not set until final-ui-startup which is too late for code that runs prior

Categories

(Firefox :: Distributions, defect)

x86
All
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 947838
Tracking Status
firefox16 - ---

People

(Reporter: robert.strong.bugs, Assigned: mkaply)

References

Details

(Keywords: regression)

+++ This bug was initially created as a clone of Bug #774618 +++

spinoff of bug 774618 for a real fix
I think the right fix is
I'm going to need some sort of safe workaround for app update so it can hopefully get onto aurora and possibly beta so I spun off the distribution bug to bug 802022.
(In reply to Robert Strong [:rstrong] (do not email) from comment #59)
>...
> I think the right fix her would be to move the reading of the
> distribution.ini preferences into Init in Preferences.cpp but I think that
> is more appropriate in a followup bug. I'll even take that followup bug
> though I might ask someone on the platform integration team to take it
> depending on how busy things are.
Assignee: nobody → mozilla
Component: General → Distributions
It appears things used to work this way (or at least were supposed to).

The preferences call here:

http://mxr.mozilla.org/mozilla-central/source/modules/libpref/Preferences.cpp#1338

Was supposed to cause this observer:

http://mxr.mozilla.org/mozilla-central/source/browser/components/nsBrowserGlue.js#265

but that doesn't appear to be happening. The default pref settings is happening through final startup:

http://mxr.mozilla.org/mozilla-central/source/browser/components/nsBrowserGlue.js#740
So here's the way it works today.

Browser Glue is initialized
Autoconfig is processed
Distribution addons are installed
final ui startup happens.
preferences get reinited via distribution.js.

The reason it happens so late is because distribution.js is lazy loaded an the first call to it doesn't happen until final ui startup.

The solution to this is to move the initialization of the distribution.js prefs earlier.

It should be before Autoconfig is processed so that autoconfig overrides distribution.ini.

In doing this, we need to make sure to regress 

https://bugzilla.mozilla.org/show_bug.cgi?id=516444
Blocks: 947838
Blocks: 1354262
No longer blocks: 1354262
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.