From ac5a2767bf22317ff713130d3e6b41bd7202cda7 Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Sat, 12 Jul 2014 16:20:43 +0200 Subject: [PATCH] Move the call to RegisterBindings::Register into WindowBinding::Wrap. --- src/components/script/dom/bindings/codegen/CodegenRust.py | 5 ++++- src/components/script/script_task.rs | 5 ----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index 071f3815a86..7f702a424f6 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -1821,8 +1821,11 @@ Temporary::new(raw)""" % CreateBindingJSObject(self.descriptor, "scope")) with_compartment(aCx, obj, || { let proto = GetProtoObject(aCx, obj, obj); JS_SetPrototype(aCx, obj, proto); + + raw.reflector().set_jsobject(obj); + + RegisterBindings::Register(aCx, obj); }); -raw.reflector().set_jsobject(obj); Temporary::new(raw)""" % CreateBindingJSObject(self.descriptor)) diff --git a/src/components/script/script_task.rs b/src/components/script/script_task.rs index 800a2b13a03..dfd121091cf 100644 --- a/src/components/script/script_task.rs +++ b/src/components/script/script_task.rs @@ -5,7 +5,6 @@ //! The script task is the task that owns the DOM in memory, runs JavaScript, and spawns parsing //! and layout tasks. -use dom::bindings::codegen::RegisterBindings; use dom::bindings::codegen::InheritTypes::{EventTargetCast, NodeCast, EventCast}; use dom::bindings::js::{JS, JSRef, RootCollection, Temporary, OptionalSettable}; use dom::bindings::js::OptionalRootable; @@ -548,10 +547,6 @@ impl ScriptTask { let document = Document::new(&*window, Some(url.clone()), HTMLDocument, None).root(); window.deref().init_browser_context(&*document); - with_compartment((**cx).ptr, window.reflector().get_jsobject(), || { - RegisterBindings::Register(window.get_cx(), window.reflector().get_jsobject()); - }); - self.compositor.set_ready_state(Loading); // Parse HTML. //