Bug 868675 - Allow waiving on non-native objects. r=gabor

This commit is contained in:
Bobby Holley 2013-05-07 10:09:02 -07:00
parent f27e202092
commit fd429ba296

View File

@ -34,9 +34,9 @@ UnwrapNW(JSContext *cx, unsigned argc, jsval *vp)
return true;
}
JS::RootedObject obj(cx, JSVAL_TO_OBJECT(v));
if (WrapperFactory::IsXrayWrapper(obj) && AccessCheck::wrapperSubsumes(obj)) {
return JS_GetProperty(cx, obj, "wrappedJSObject", vp);
if (AccessCheck::wrapperSubsumes(&v.toObject())) {
bool ok = xpc::WrapperFactory::WaiveXrayAndWrap(cx, v.address());
NS_ENSURE_TRUE(ok, false);
}
JS_SET_RVAL(cx, vp, v);