Disable argument unwrapping on Fx < 32

This apparently breaks on Fx 24
This commit is contained in:
Simon Kornblith 2014-06-23 22:55:02 -04:00
parent dd5160cc73
commit 8cb081a4e1

View File

@ -462,11 +462,16 @@ Zotero.Translate.SandboxManager.prototype = {
if(isFunction) {
attachTo[localKey] = function() {
var args = Array.prototype.slice.apply(arguments);
if(Zotero.platformMajorVersion >= 32) {
// This is necessary on Nightly and works
// fine on 31, but apparently ZU.xpath in
// an unusual way on 24
for(var i=0; i<args.length; i++) {
if(typeof args[i] === "object" && args[i] !== null && args[i].wrappedJSObject) {
args[i] = args[i].wrappedJSObject;
}
}
}
if(passAsFirstArgument) args.unshift(passAsFirstArgument);
return me._copyObject(object[localKey].apply(object, args));
};