Closed Bug 1092808 Opened 10 years ago Closed 10 years ago

Firefox does not remember tracking protection setting

Categories

(Firefox :: Settings UI, defect)

35 Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 36

People

(Reporter: soeren.hentzschel, Assigned: Gavin)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

STR: 1. set browser.polaris.enabled to true 2. disable tracking protection in about:preferences privacy tab 3. restart Firefox Expected: Tracking protection is still disabled. Actual: Tracking protection is enabled.
I confirmed this on a new profile. Either https://bugzilla.mozilla.org/show_bug.cgi?id=1031033 is wrong or we are getting a pref changed event for polaris that is resetting related prefs in https://bugzilla.mozilla.org/show_bug.cgi?id=1081343.
Hello Gavin and Tomasz, We are getting a pref-changed event on startup in https://hg.mozilla.org/mozilla-central/rev/54fab44be5f3#l2.30 that is causing tracking protection to be enabled on restart if polaris is enabled. What's the right thing to do here? Monica
Flags: needinfo?(tkolodziejski)
Flags: needinfo?(gavin.sharp)
The same changeset also doesn't disable the preferences UI if the user clears the polaris pref mid-session.
The stack to the pref observer being called in this scenario is the following: > nsPrefBranch::NotifyObserver(char const*, void*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/nsPrefBranch.cpp:695 > pref_DoCallback(char const*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/prefapi.cpp:975 > pref_HashPref(char const*, PrefValue, PrefType, unsigned int) at /Users/gavin/mozilla/mozilla-central/modules/libpref/prefapi.cpp:823 > PREF_ReaderCallback at /Users/gavin/mozilla/mozilla-central/modules/libpref/prefapi.cpp:1010 > pref_DoCallback(PrefParseState*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/prefread.cpp:132 > PREF_ParseBuf at /Users/gavin/mozilla/mozilla-central/modules/libpref/prefread.cpp:524 > mozilla::openPrefFile(nsIFile*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/Preferences.cpp:1049 > mozilla::Preferences::ReadAndOwnUserPrefFile(nsIFile*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/Preferences.cpp:903 > mozilla::Preferences::UseDefaultPrefFile() at /Users/gavin/mozilla/mozilla-central/modules/libpref/Preferences.cpp:827 > mozilla::Preferences::ReadUserPrefs(nsIFile*) at /Users/gavin/mozilla/mozilla-central/modules/libpref/Preferences.cpp:624 > mozilla::Preferences::ResetAndReadUserPrefs() at /Users/gavin/mozilla/mozilla-central/modules/libpref/Preferences.cpp:577 > nsXREDirProvider::DoStartup() at /Users/gavin/mozilla/mozilla-central/toolkit/xre/nsXREDirProvider.cpp:823 > XREMain::XRE_mainRun() at /Users/gavin/mozilla/mozilla-central/toolkit/xre/nsAppRunner.cpp:3997 > XREMain::XRE_main(int, char**, nsXREAppData const*) at /Users/gavin/mozilla/mozilla-central/toolkit/xre/nsAppRunner.cpp:4187 > XRE_main at /Users/gavin/mozilla/mozilla-central/toolkit/xre/nsAppRunner.cpp:4407 > do_main(int, char**, nsIFile*) at /Users/gavin/mozilla/mozilla-central/browser/app/nsBrowserApp.cpp:287 > main at /Users/gavin/mozilla/mozilla-central/browser/app/nsBrowserApp.cpp:656 I didn't think reading the user pref file triggered preference change observers, but apparently it does if you register your observer early enough. So let's just register the observer later during startup.
Flags: needinfo?(gavin.sharp)
Attached patch patch (deleted) — Splinter Review
This adds the observer during finalUIStartup (shortly before first window open), which is late enough that it isn't triggered while reading user prefs in my testing. This seems like a prefs API foot gun in general, and this is just dodging it.
Assignee: nobody → gavin.sharp
Status: NEW → ASSIGNED
Flags: needinfo?(tkolodziejski)
Attachment #8516217 - Flags: review?(dolske)
Attachment #8516217 - Flags: review?(dolske) → review+
OS: Mac OS X → All
Target Milestone: --- → Firefox 36
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Verified on Windows 7 64bit, Ubuntu 13.10 32bit and Mac OSX 10.9.5: - using latest Aurora 36.0a2 (07-01-2015) : the UI for tracking protection is not uplifted yet to Aurora - using latest Nightly 37.0a1 (07-01-2015) : the issue is fixed.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: