Browse Source

Firefox: remove evalInSandbox

Probably we won't eval plain text code, which makes it unnecessary, also
this way the validator on AMO won't complain about it.
pull/2/head
Deathamns 10 years ago
committed by gorhill
parent
commit
45cd3305d1
  1. 39
      platform/firefox/frameModule.js

39
platform/firefox/frameModule.js

@ -183,14 +183,9 @@ const contentObserver = {
wantXHRConstructor: false wantXHRConstructor: false
}); });
sandbox.injectScript = function(script, evalCode) {
if ( evalCode ) {
Cu.evalInSandbox(script, this);
return;
}
Services.scriptloader.loadSubScript(script, this);
}.bind(sandbox);
sandbox.injectScript = function(script) {
Services.scriptloader.loadSubScript(script, sandbox);
};
} }
else { else {
sandbox = win; sandbox = win;
@ -200,43 +195,43 @@ const contentObserver = {
sandbox.sendAsyncMessage = messager.sendAsyncMessage; sandbox.sendAsyncMessage = messager.sendAsyncMessage;
sandbox.addMessageListener = function(callback) { sandbox.addMessageListener = function(callback) {
if ( this._messageListener_ ) {
this.removeMessageListener(
this._sandboxId_,
this._messageListener_
if ( sandbox._messageListener_ ) {
sandbox.removeMessageListener(
sandbox._sandboxId_,
sandbox._messageListener_
); );
} }
this._messageListener_ = function(message) {
sandbox._messageListener_ = function(message) {
callback(message.data); callback(message.data);
}; };
messager.addMessageListener( messager.addMessageListener(
this._sandboxId_,
this._messageListener_
sandbox._sandboxId_,
sandbox._messageListener_
); );
messager.addMessageListener( messager.addMessageListener(
hostName + ':broadcast', hostName + ':broadcast',
this._messageListener_
sandbox._messageListener_
); );
}.bind(sandbox);
};
sandbox.removeMessageListener = function() { sandbox.removeMessageListener = function() {
try { try {
messager.removeMessageListener( messager.removeMessageListener(
this._sandboxId_,
this._messageListener_
sandbox._sandboxId_,
sandbox._messageListener_
); );
messager.removeMessageListener( messager.removeMessageListener(
hostName + ':broadcast', hostName + ':broadcast',
this._messageListener_
sandbox._messageListener_
); );
} catch (ex) { } catch (ex) {
// It throws sometimes, mostly when the popup closes // It throws sometimes, mostly when the popup closes
} }
this._messageListener_ = null;
}.bind(sandbox);
sandbox._messageListener_ = null;
};
return sandbox; return sandbox;
}, },

Loading…
Cancel
Save