aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/create.rs
diff options
context:
space:
mode:
authorCYBAI <cyb.ai.815@gmail.com>2020-01-24 12:43:49 +0900
committerCYBAI <cyb.ai.815@gmail.com>2020-02-16 09:55:10 +0900
commit403ffcf1eb5c659626f70dec72f76aaf7782986d (patch)
treedf2f2e06ed557fcaac17862791a6c1db1f8a7b57 /components/script/dom/create.rs
parent795dab71fffe98434308732e4cb8ee682f28e465 (diff)
downloadservo-403ffcf1eb5c659626f70dec72f76aaf7782986d.tar.gz
servo-403ffcf1eb5c659626f70dec72f76aaf7782986d.zip
Always pass InRealm to GlobalScope::from_context to avoid getting null global
Diffstat (limited to 'components/script/dom/create.rs')
-rw-r--r--components/script/dom/create.rs7
1 files changed, 3 insertions, 4 deletions
diff --git a/components/script/dom/create.rs b/components/script/dom/create.rs
index f68a680483d..62484c6f861 100644
--- a/components/script/dom/create.rs
+++ b/components/script/dom/create.rs
@@ -81,9 +81,9 @@ use crate::dom::htmlulistelement::HTMLUListElement;
use crate::dom::htmlunknownelement::HTMLUnknownElement;
use crate::dom::htmlvideoelement::HTMLVideoElement;
use crate::dom::svgsvgelement::SVGSVGElement;
+use crate::realms::{enter_realm, InRealm};
use crate::script_thread::ScriptThread;
use html5ever::{LocalName, Prefix, QualName};
-use js::jsapi::JSAutoRealm;
use servo_config::pref;
fn create_svg_element(
@@ -157,10 +157,9 @@ fn create_html_element(
// Step 6.1.1
unsafe {
- let _ac =
- JSAutoRealm::new(*cx, global.reflector().get_jsobject().get());
+ let ar = enter_realm(&*global);
throw_dom_exception(cx, &global, error);
- report_pending_exception(*cx, true);
+ report_pending_exception(*cx, true, InRealm::Entered(&ar));
}
// Step 6.1.2