diff options
author | Aron Zwaan <aronzwaan@gmail.com> | 2019-04-24 18:53:50 +0200 |
---|---|---|
committer | Aron Zwaan <aronzwaan@gmail.com> | 2019-04-24 19:46:10 +0200 |
commit | 1b6949d4cf951600efa6db6747b65e2db42a96cd (patch) | |
tree | c6270640b2f73045f91c1b65723e865490e69656 /components/script/dom/testbinding.rs | |
parent | 7b293ee8cba64937c591c36a9a7e1d6c727d247c (diff) | |
download | servo-1b6949d4cf951600efa6db6747b65e2db42a96cd.tar.gz servo-1b6949d4cf951600efa6db6747b65e2db42a96cd.zip |
Add proof parameter to Promise::new_in_current_compartment
Diffstat (limited to 'components/script/dom/testbinding.rs')
-rw-r--r-- | components/script/dom/testbinding.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/components/script/dom/testbinding.rs b/components/script/dom/testbinding.rs index f5d64a478de..a1515340199 100644 --- a/components/script/dom/testbinding.rs +++ b/components/script/dom/testbinding.rs @@ -4,6 +4,7 @@ // check-tidy: no specs after this line +use crate::compartments::{AlreadyInCompartment, InCompartment}; use crate::dom::bindings::callback::ExceptionHandling; use crate::dom::bindings::codegen::Bindings::EventListenerBinding::EventListener; use crate::dom::bindings::codegen::Bindings::FunctionBinding::Function; @@ -1009,7 +1010,6 @@ impl TestBindingMethods for TestBinding { ); } - #[allow(unsafe_code)] fn PromiseNativeHandler( &self, resolve: Option<Rc<SimpleCallback>>, @@ -1021,7 +1021,11 @@ impl TestBindingMethods for TestBinding { resolve.map(SimpleHandler::new), reject.map(SimpleHandler::new), ); - let p = unsafe { Promise::new_in_current_compartment(&global) }; + let in_compartment_proof = AlreadyInCompartment::assert(&global); + let p = Promise::new_in_current_compartment( + &global, + &InCompartment::Already(&in_compartment_proof), + ); p.append_native_handler(&handler); return p; @@ -1044,9 +1048,12 @@ impl TestBindingMethods for TestBinding { } } - #[allow(unsafe_code)] fn PromiseAttribute(&self) -> Rc<Promise> { - unsafe { Promise::new_in_current_compartment(&self.global()) } + let in_compartment_proof = AlreadyInCompartment::assert(&self.global()); + Promise::new_in_current_compartment( + &self.global(), + &InCompartment::Already(&in_compartment_proof), + ) } fn AcceptPromise(&self, _promise: &Promise) {} |