diff options
Diffstat (limited to 'src/components/script/dom/attrlist.rs')
-rw-r--r-- | src/components/script/dom/attrlist.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/components/script/dom/attrlist.rs b/src/components/script/dom/attrlist.rs index 78f8211e3e0..273378347f0 100644 --- a/src/components/script/dom/attrlist.rs +++ b/src/components/script/dom/attrlist.rs @@ -4,7 +4,7 @@ use dom::attr::Attr; use dom::bindings::codegen::BindingDeclarations::AttrListBinding; -use dom::bindings::js::{JS, JSRef, Unrooted}; +use dom::bindings::js::{JS, JSRef, Unrooted, RootCollection}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::element::Element; use dom::window::Window; @@ -31,11 +31,13 @@ impl AttrList { } pub fn Length(&self) -> u32 { - self.owner.get().attrs.len() as u32 + let roots = RootCollection::new(); + self.owner.root(&roots).attrs.len() as u32 } pub fn Item(&self, index: u32) -> Option<Unrooted<Attr>> { - self.owner.get().attrs.as_slice().get(index as uint).map(|x| Unrooted::new(x.clone())) + let roots = RootCollection::new(); + self.owner.root(&roots).attrs.as_slice().get(index as uint).map(|x| Unrooted::new(x.clone())) } pub fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<Unrooted<Attr>> { |