From 830e3d549bce716a64c289fc5d59201b2629bd8b Mon Sep 17 00:00:00 2001 From: Gijs Kruitbosch Date: Wed, 28 Oct 2009 22:44:15 +0100 Subject: [PATCH] Prepare callsites of clearUserPref so it can go back to throwing. r=gavin --- browser/base/content/openLocationLastURL.jsm | 3 ++- .../test/browser/browser_privatebrowsing_opendir.js | 3 ++- toolkit/mozapps/downloads/src/DownloadLastDir.jsm | 2 +- toolkit/mozapps/extensions/content/extensions.js | 3 ++- toolkit/mozapps/extensions/src/nsExtensionManager.js.in | 7 ++++--- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/browser/base/content/openLocationLastURL.jsm b/browser/base/content/openLocationLastURL.jsm index 437797ddd1c2..dc7a111bf24d 100644 --- a/browser/base/content/openLocationLastURL.jsm +++ b/browser/base/content/openLocationLastURL.jsm @@ -88,7 +88,8 @@ let gOpenLocationLastURL = { } }, reset: function() { - prefSvc.clearUserPref(LAST_URL_PREF); + if (prefSvc.prefHasUserValue(LAST_URL_PREF)) + prefSvc.clearUserPref(LAST_URL_PREF); gOpenLocationLastURLData = ""; } }; diff --git a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_opendir.js b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_opendir.js index cb83edf610fa..475bd7ba866a 100644 --- a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_opendir.js +++ b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_opendir.js @@ -54,7 +54,8 @@ function test() { function setupCleanSlate() { gLastOpenDirectory.reset(); - gPrefService.clearUserPref(kPrefName); + if (gPrefService.prefHasUserValue(kPrefName)) + gPrefService.clearUserPref(kPrefName); } setupCleanSlate(); diff --git a/toolkit/mozapps/downloads/src/DownloadLastDir.jsm b/toolkit/mozapps/downloads/src/DownloadLastDir.jsm index cac427e206dd..0f81be579277 100644 --- a/toolkit/mozapps/downloads/src/DownloadLastDir.jsm +++ b/toolkit/mozapps/downloads/src/DownloadLastDir.jsm @@ -97,7 +97,7 @@ let gDownloadLastDir = { } else { if (val instanceof Components.interfaces.nsIFile) prefSvc.setComplexValue(LAST_DIR_PREF, nsILocalFile, val); - else + else if (prefSvc.prefHasUserValue(LAST_DIR_PREF)) prefSvc.clearUserPref(LAST_DIR_PREF); } } diff --git a/toolkit/mozapps/extensions/content/extensions.js b/toolkit/mozapps/extensions/content/extensions.js index 33384f59bc23..b40712e5b318 100644 --- a/toolkit/mozapps/extensions/content/extensions.js +++ b/toolkit/mozapps/extensions/content/extensions.js @@ -2238,7 +2238,8 @@ const gLWThemeObserver = { } else if (aTopic == "lightweight-theme-changed") { gLWThemeToSelect = LightweightThemeManager.currentTheme; - gPref.clearUserPref(PREF_LWTHEME_TO_SELECT); + if (gPref.prefHasUserValue(PREF_LWTHEME_TO_SELECT)) + gPref.clearUserPref(PREF_LWTHEME_TO_SELECT); } } }; diff --git a/toolkit/mozapps/extensions/src/nsExtensionManager.js.in b/toolkit/mozapps/extensions/src/nsExtensionManager.js.in index e2dd27e7dc41..ce8598f3a4f2 100644 --- a/toolkit/mozapps/extensions/src/nsExtensionManager.js.in +++ b/toolkit/mozapps/extensions/src/nsExtensionManager.js.in @@ -2316,7 +2316,8 @@ ExtensionManager.prototype = { // If we've changed to a non-default theme make sure there is no // lightweight theme selected if (toSelect != gDefaultTheme) { - gPref.clearUserPref(PREF_LWTHEME_TO_SELECT); + if (gPref.prefHasUserValue(PREF_LWTHEME_TO_SELECT)) + gPref.clearUserPref(PREF_LWTHEME_TO_SELECT); LightweightThemeManager.currentTheme = null; } } @@ -3311,8 +3312,8 @@ ExtensionManager.prototype = { // Remember the list of add-ons that were disabled this time around gPref.setCharPref(PREF_EM_DISABLED_ADDONS_LIST, disabledAddons.join(",")); } - } else { - // Clear the disabled addons list + } else if (gPref.prefHasUserValue(PREF_EM_DISABLED_ADDONS_LIST)) { + // Clear the disabled addons list if necessary gPref.clearUserPref(PREF_EM_DISABLED_ADDONS_LIST); }