aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/errorevent.rs
diff options
context:
space:
mode:
authorMichael Wu <mwu@mozilla.com>2015-09-23 16:53:03 -0400
committerMichael Wu <mwu@mozilla.com>2015-10-14 15:30:52 -0400
commite733a7c46a5d14a1be219e76136cdcb2d678d33a (patch)
tree7a50317a6cfa109eb3a7049add9ad87597dac55e /components/script/dom/errorevent.rs
parent32daa17d5cbcad02db0713e21e52410cdc60480e (diff)
downloadservo-e733a7c46a5d14a1be219e76136cdcb2d678d33a.tar.gz
servo-e733a7c46a5d14a1be219e76136cdcb2d678d33a.zip
Support the updated spidermonkey bindings
Diffstat (limited to 'components/script/dom/errorevent.rs')
-rw-r--r--components/script/dom/errorevent.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/components/script/dom/errorevent.rs b/components/script/dom/errorevent.rs
index e58a80ca259..2d95586c350 100644
--- a/components/script/dom/errorevent.rs
+++ b/components/script/dom/errorevent.rs
@@ -13,7 +13,7 @@ use dom::bindings::js::{MutHeapJSVal, Root};
use dom::bindings::trace::JSTraceable;
use dom::bindings::utils::reflect_dom_object;
use dom::event::{Event, EventBubbles, EventCancelable};
-use js::jsapi::{HandleValue, JSContext};
+use js::jsapi::{RootedValue, HandleValue, JSContext};
use js::jsval::JSVal;
use std::borrow::ToOwned;
use std::cell::Cell;
@@ -102,11 +102,14 @@ impl ErrorEvent {
EventCancelable::NotCancelable
};
+ // Dictionaries need to be rooted
+ // https://github.com/servo/servo/issues/6381
+ let error = RootedValue::new(global.get_cx(), init.error);
let event = ErrorEvent::new(global, type_,
bubbles, cancelable,
msg, file_name,
line_num, col_num,
- HandleValue { ptr: &init.error });
+ error.handle());
Ok(event)
}