From c693cb185cb9fc4159eaf4e3191845377d8413d7 Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Sun, 3 Nov 2013 11:48:20 +0100 Subject: [PATCH] Stop calling wrap_object_shared in WrapNewBindingObject and WrapNativeParent. Fixes #1083. --- src/components/script/dom/bindings/utils.rs | 23 ++++----------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/src/components/script/dom/bindings/utils.rs b/src/components/script/dom/bindings/utils.rs index 7eb70ff145f..5df2fe62fd7 100644 --- a/src/components/script/dom/bindings/utils.rs +++ b/src/components/script/dom/bindings/utils.rs @@ -584,39 +584,24 @@ impl Reflector { } #[fixed_stack_segment] -pub fn WrapNewBindingObject(cx: *JSContext, scope: *JSObject, +pub fn WrapNewBindingObject(cx: *JSContext, _scope: *JSObject, value: @mut Reflectable, vp: *mut JSVal) -> JSBool { unsafe { let reflector = value.mut_reflector(); let obj = reflector.get_jsobject(); - if obj.is_not_null() /*&& js::GetObjectCompartment(obj) == js::GetObjectCompartment(scope)*/ { - *vp = RUST_OBJECT_TO_JSVAL(obj); - return 1; // JS_TRUE - } - - let obj = value.wrap_object_shared(cx, scope); - if obj.is_null() { - return 0; // JS_FALSE - } - - // MOZ_ASSERT(js::IsObjectInContextCompartment(scope, cx)); - reflector.set_jsobject(obj); + assert!(obj.is_not_null()); *vp = RUST_OBJECT_TO_JSVAL(obj); return JS_WrapValue(cx, cast::transmute(vp)); } } #[fixed_stack_segment] -pub fn WrapNativeParent(cx: *JSContext, scope: *JSObject, mut p: Option<@mut Reflectable>) -> *JSObject { +pub fn WrapNativeParent(cx: *JSContext, _scope: *JSObject, mut p: Option<@mut Reflectable>) -> *JSObject { match p { Some(ref mut p) => { let obj = p.reflector().get_jsobject(); - if obj.is_not_null() { - return obj; - } - let obj = p.wrap_object_shared(cx, scope); - p.mut_reflector().set_jsobject(obj); + assert!(obj.is_not_null()); obj } None => unsafe { JS_GetGlobalObject(cx) }