diff options
author | Ms2ger <ms2ger@gmail.com> | 2014-03-14 13:06:48 +0100 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2014-03-14 13:06:51 +0100 |
commit | 4ad3b6ccd160107d96df4d6925a8241403f2242a (patch) | |
tree | 154f5570a14136c4a77d5b02e1becd8f897d6f61 /src/components/script/dom/node.rs | |
parent | 71f4fd0478183692ba114351841b44c58691e665 (diff) | |
download | servo-4ad3b6ccd160107d96df4d6925a8241403f2242a.tar.gz servo-4ad3b6ccd160107d96df4d6925a8241403f2242a.zip |
Return a JS<T> from *Binding::Wrap rather than a JSObject.
This lets us avoid the sketchy tricks in JS::new and Window::new, where we
kept an unsafe pointer to the native object across the Wrap call that
consumed the owned pointer.
Diffstat (limited to 'src/components/script/dom/node.rs')
-rw-r--r-- | src/components/script/dom/node.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/components/script/dom/node.rs b/src/components/script/dom/node.rs index 000a19be847..7e844585ee7 100644 --- a/src/components/script/dom/node.rs +++ b/src/components/script/dom/node.rs @@ -766,7 +766,7 @@ impl Node { pub fn reflect_node<N: Reflectable+NodeBase> (node: ~N, document: &JS<Document>, - wrap_fn: extern "Rust" fn(*JSContext, &JS<Window>, ~N) -> *JSObject) + wrap_fn: extern "Rust" fn(*JSContext, &JS<Window>, ~N) -> JS<N>) -> JS<N> { assert!(node.reflector().get_jsobject().is_null()); let node = reflect_dom_object(node, &document.get().window, wrap_fn); |