Bug 1020651 - about:preferences do not work properly if browser.cache.{disk,memory}.enable is false. r=jaws

This commit is contained in:
Tom Schuster 2014-06-13 19:13:37 +02:00
parent 48e080eaf4
commit 9b6f587522
2 changed files with 27 additions and 13 deletions

View File

@ -304,10 +304,12 @@ var gAdvancedPane = {
actualSizeLabel.textContent = prefStrBundle.getString("actualDiskCacheSizeCalculated");
var cacheService =
Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
cacheService.asyncGetDiskConsumption(this.observer);
try {
var cacheService =
Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
cacheService.asyncGetDiskConsumption(this.observer);
} catch (e) {}
},
// Retrieves the amount of space currently used by offline cache
@ -324,11 +326,13 @@ var gAdvancedPane = {
}
};
var cacheService =
Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
var storage = cacheService.appCacheStorage(LoadContextInfo.default, null);
storage.asyncVisitStorage(visitor, false);
try {
var cacheService =
Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
var storage = cacheService.appCacheStorage(LoadContextInfo.default, null);
storage.asyncVisitStorage(visitor, false);
} catch (e) {}
},
updateCacheSizeUI: function (smartSizeEnabled)
@ -372,9 +376,9 @@ var gAdvancedPane = {
*/
clearCache: function ()
{
var cache = Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
try {
var cache = Components.classes["@mozilla.org/netwerk/cache-storage-service;1"]
.getService(Components.interfaces.nsICacheStorageService);
cache.clear();
} catch(ex) {}
this.updateActualCacheSize();

View File

@ -7,11 +7,21 @@ Components.utils.import("resource://gre/modules/NetUtil.jsm");
function test() {
waitForExplicitFinish();
let prefs = [
"browser.cache.offline.enable",
"browser.cache.disk.enable",
"browser.cache.memory.enable",
];
registerCleanupFunction(function() {
Services.prefs.clearUserPref("browser.cache.offline.enable");
for (let pref of prefs) {
Services.prefs.clearUserPref(pref);
}
});
Services.prefs.setBoolPref("browser.cache.offline.enable", false);
for (let pref of prefs) {
Services.prefs.setBoolPref(pref, false);
}
open_preferences(runTest);
}