diff options
author | Josh Matthews <josh@joshmatthews.net> | 2014-03-28 10:17:56 -0400 |
---|---|---|
committer | Josh Matthews <josh@joshmatthews.net> | 2014-05-03 14:18:30 -0400 |
commit | ffdc3f5b32a345b88eed774848924e862d47c093 (patch) | |
tree | 047371062d728fecca45229a3e2cf87407410ba0 /src/components/script/dom/formdata.rs | |
parent | 4051a8096d7ba7e7f9c86e76d0b4bffd83e85805 (diff) | |
download | servo-ffdc3f5b32a345b88eed774848924e862d47c093.tar.gz servo-ffdc3f5b32a345b88eed774848924e862d47c093.zip |
Turn on GC all the time. Fix rooting errors during parsing and storing timers. Fix borrow errors during tracing.
Diffstat (limited to 'src/components/script/dom/formdata.rs')
-rw-r--r-- | src/components/script/dom/formdata.rs | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/components/script/dom/formdata.rs b/src/components/script/dom/formdata.rs index 140c70a12d2..4b6d61c1d82 100644 --- a/src/components/script/dom/formdata.rs +++ b/src/components/script/dom/formdata.rs @@ -5,7 +5,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::bindings::error::{Fallible}; use dom::bindings::codegen::BindingDeclarations::FormDataBinding; -use dom::bindings::js::JS; +use dom::bindings::js::{JS, JSRef}; use dom::blob::Blob; use dom::htmlformelement::HTMLFormElement; use dom::window::Window; @@ -28,27 +28,27 @@ pub struct FormData { } impl FormData { - pub fn new_inherited(form: Option<JS<HTMLFormElement>>, window: JS<Window>) -> FormData { + pub fn new_inherited(form: Option<JSRef<HTMLFormElement>>, window: JS<Window>) -> FormData { FormData { data: HashMap::new(), reflector_: Reflector::new(), window: window, - form: form + form: form.map(|form| form.unrooted()) } } - pub fn new(form: Option<JS<HTMLFormElement>>, window: &JS<Window>) -> JS<FormData> { - reflect_dom_object(~FormData::new_inherited(form, window.clone()), window, FormDataBinding::Wrap) + pub fn new(form: Option<JSRef<HTMLFormElement>>, window: &JSRef<Window>) -> JS<FormData> { + reflect_dom_object(~FormData::new_inherited(form, window.unrooted()), window, FormDataBinding::Wrap) } - pub fn Constructor(window: &JS<Window>, form: Option<JS<HTMLFormElement>>) + pub fn Constructor(window: &JSRef<Window>, form: Option<JSRef<HTMLFormElement>>) -> Fallible<JS<FormData>> { Ok(FormData::new(form, window)) } - pub fn Append(&mut self, name: DOMString, value: &JS<Blob>, filename: Option<DOMString>) { + pub fn Append(&mut self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>) { let blob = BlobData { - blob: value.clone(), + blob: value.unrooted(), name: filename.unwrap_or(~"default") }; self.data.insert(name.clone(), blob); |