JSObject *GetXBLScope(JSContext *cx, JSObject *contentScope_) { JS::RootedObject contentScope(cx, contentScope_); JSAutoCompartment ac(cx, contentScope); JSObject *scope = EnsureCompartmentPrivate(contentScope)->scope->EnsureXBLScope(cx); NS_ENSURE_TRUE(scope, nullptr); // See bug 858642. scope = js::UncheckedUnwrap(scope); xpc_UnmarkGrayObject(scope); return scope; }
JSObject *GetXBLScope(JSContext *cx, JSObject *contentScopeArg) { JS::RootedObject contentScope(cx, contentScopeArg); JSAutoCompartment ac(cx, contentScope); JSObject *scope = EnsureCompartmentPrivate(contentScope)->scope->EnsureXBLScope(cx); NS_ENSURE_TRUE(scope, nullptr); // See bug 858642. scope = js::UncheckedUnwrap(scope); JS::ExposeObjectToActiveJS(scope); return scope; }