From 1cc59c96298133038a9b8e93c14ff619d48f4cda Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Wed, 5 Mar 2014 21:00:56 +0100 Subject: [PATCH] Stop sticking things in the JSContext private. --- rust.rs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/rust.rs b/rust.rs index e49a71d09..92ab5c62e 100644 --- a/rust.rs +++ b/rust.rs @@ -128,25 +128,19 @@ impl CxUtils for rc::Rc { let ptr = self.borrow().ptr; let globobj = JS_NewGlobalObject(ptr, globcls, null()); result(JS_InitStandardClasses(ptr, globobj)).and_then(|_ok| { - let compartment = rc::Rc::new(Compartment { + Ok(rc::Rc::new(Compartment { cx: self.clone(), global_obj: self.rooted_obj(globobj), - }); - self.borrow().set_cx_private(ptr::to_unsafe_ptr(compartment.borrow()) as *()); - Ok(compartment) + })) }) } } fn new_compartment_with_global(&self, global: *JSObject) -> Result,()> { - let compartment = rc::Rc::new(Compartment { + Ok(rc::Rc::new(Compartment { cx: self.clone(), global_obj: self.rooted_obj(global), - }); - unsafe { - self.borrow().set_cx_private(ptr::to_unsafe_ptr(compartment.borrow()) as *()); - } - Ok(compartment) + })) } }