mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-22 23:27:30 +09:00
Bug 1280775 - null check in removePermission to prevent crash: permission manager change
This commit is contained in:
parent
91bd7e5c06
commit
4deec33633
1 changed files with 13 additions and 13 deletions
|
|
@ -475,23 +475,23 @@ var gAdvancedPane = {
|
||||||
var pm = Components.classes["@mozilla.org/permissionmanager;1"]
|
var pm = Components.classes["@mozilla.org/permissionmanager;1"]
|
||||||
.getService(Components.interfaces.nsIPermissionManager);
|
.getService(Components.interfaces.nsIPermissionManager);
|
||||||
var perm = pm.getPermissionObject(principal, "offline-app");
|
var perm = pm.getPermissionObject(principal, "offline-app");
|
||||||
|
if (perm) {
|
||||||
// clear offline cache entries
|
// clear offline cache entries
|
||||||
var cacheService = Components.classes["@mozilla.org/network/application-cache-service;1"].
|
try {
|
||||||
getService(Components.interfaces.nsIApplicationCacheService);
|
var cacheService = Components.classes["@mozilla.org/network/application-cache-service;1"].
|
||||||
var ios = Components.classes["@mozilla.org/network/io-service;1"].
|
getService(Components.interfaces.nsIApplicationCacheService);
|
||||||
getService(Components.interfaces.nsIIOService);
|
var groups = cacheService.getGroups();
|
||||||
var groups = cacheService.getGroups();
|
for (var i = 0; i < groups.length; i++) {
|
||||||
for (var i = 0; i < groups.length; i++) {
|
var uri = Services.io.newURI(groups[i], null, null);
|
||||||
var uri = ios.newURI(groups[i], null, null);
|
if (perm.matchesURI(uri, true)) {
|
||||||
if (perm.matchesURI(uri, true)) {
|
|
||||||
var cache = cacheService.getActiveCache(groups[i]);
|
var cache = cacheService.getActiveCache(groups[i]);
|
||||||
cache.discard();
|
cache.discard();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} catch (e) {}
|
||||||
|
|
||||||
|
pm.removePermission(perm);
|
||||||
}
|
}
|
||||||
|
|
||||||
pm.removePermission(perm);
|
|
||||||
|
|
||||||
list.removeChild(item);
|
list.removeChild(item);
|
||||||
gAdvancedPane.offlineAppSelected();
|
gAdvancedPane.offlineAppSelected();
|
||||||
this.updateActualAppCacheSize();
|
this.updateActualAppCacheSize();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue