diff options
Diffstat (limited to 'components/script/dom/attr.rs')
-rw-r--r-- | components/script/dom/attr.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/components/script/dom/attr.rs b/components/script/dom/attr.rs index 34f1d48c5a9..9a062679a4f 100644 --- a/components/script/dom/attr.rs +++ b/components/script/dom/attr.rs @@ -8,6 +8,7 @@ use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods; use dom::bindings::codegen::InheritTypes::NodeCast; use dom::bindings::global::GlobalRef; use dom::bindings::js::{JS, JSRef, Temporary}; +use dom::bindings::js::{OptionalRootedRootable, RootedReference}; use dom::bindings::utils::{Reflector, reflect_dom_object}; use dom::element::{Element, AttributeHandlers}; use dom::node::Node; @@ -151,8 +152,8 @@ impl<'a> AttrMethods for JSRef<'a, Attr> { } Some(o) => { let owner = o.root(); - let value = owner.parse_attribute(&self.namespace, self.local_name(), value); - self.set_value(AttrSettingType::ReplacedAttr, value, *owner); + let value = owner.r().parse_attribute(&self.namespace, self.local_name(), value); + self.set_value(AttrSettingType::ReplacedAttr, value, owner.r()); } } } @@ -207,7 +208,7 @@ pub trait AttrHelpers<'a> { impl<'a> AttrHelpers<'a> for JSRef<'a, Attr> { fn set_value(self, set_type: AttrSettingType, value: AttrValue, owner: JSRef<Element>) { - assert!(Some(owner) == self.owner.map(|o| *o.root())); + assert!(Some(owner) == self.owner.root().r()); let node: JSRef<Node> = NodeCast::from_ref(owner); let namespace_is_null = self.namespace == ns!(""); |