Fix NS_ENSURE_TRUE(isSandbox) warnings in JPM bootstrap. r?erahm
draft
Fix NS_ENSURE_TRUE(isSandbox) warnings in JPM bootstrap. r?erahm
MozReview-Commit-ID: E4qgjheRyV6
--- a/addon-sdk/source/lib/sdk/addon/bootstrap.js
+++ b/addon-sdk/source/lib/sdk/addon/bootstrap.js
@@ -152,21 +152,19 @@ Bootstrap.prototype = {
return new Promise(resolve => {
const { loader } = this;
if (loader) {
this.loader = null;
unload(loader, reason);
setTimeout(() => {
for (let uri of Object.keys(loader.sandboxes)) {
- try {
- Cu.nukeSandbox(loader.sandboxes[uri]);
- } catch (e) {
- // This will throw for shared sandboxes.
- }
+ let sandbox = loader.sandboxes[uri];
+ if (Cu.getClassName(sandbox, true) == "Sandbox")
+ Cu.nukeSandbox(sandbox);
delete loader.sandboxes[uri];
delete loader.modules[uri];
}
try {
Cu.nukeSandbox(loader.sharedGlobalSandbox);
} catch (e) {
Cu.reportError(e);