mirror of
https://github.com/servo/servo.git
synced 2025-06-14 11:24:33 +00:00
Make workers' interrupt_callback use GlobalScope
This commit is contained in:
parent
907781eb75
commit
00e66a777a
2 changed files with 8 additions and 12 deletions
|
@ -11,7 +11,7 @@ use dom::bindings::codegen::Bindings::DedicatedWorkerGlobalScopeBinding;
|
||||||
use dom::bindings::codegen::Bindings::DedicatedWorkerGlobalScopeBinding::DedicatedWorkerGlobalScopeMethods;
|
use dom::bindings::codegen::Bindings::DedicatedWorkerGlobalScopeBinding::DedicatedWorkerGlobalScopeMethods;
|
||||||
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
|
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
|
||||||
use dom::bindings::error::{ErrorInfo, ErrorResult};
|
use dom::bindings::error::{ErrorInfo, ErrorResult};
|
||||||
use dom::bindings::global::{GlobalRef, global_root_from_context};
|
use dom::bindings::global::global_scope_from_context;
|
||||||
use dom::bindings::inheritance::Castable;
|
use dom::bindings::inheritance::Castable;
|
||||||
use dom::bindings::js::{Root, RootCollection};
|
use dom::bindings::js::{Root, RootCollection};
|
||||||
use dom::bindings::reflector::Reflectable;
|
use dom::bindings::reflector::Reflectable;
|
||||||
|
@ -342,11 +342,9 @@ impl DedicatedWorkerGlobalScope {
|
||||||
|
|
||||||
#[allow(unsafe_code)]
|
#[allow(unsafe_code)]
|
||||||
unsafe extern "C" fn interrupt_callback(cx: *mut JSContext) -> bool {
|
unsafe extern "C" fn interrupt_callback(cx: *mut JSContext) -> bool {
|
||||||
let global = global_root_from_context(cx);
|
let worker =
|
||||||
let worker = match global.r() {
|
Root::downcast::<WorkerGlobalScope>(global_scope_from_context(cx))
|
||||||
GlobalRef::Worker(w) => w,
|
.expect("global is not a worker scope");
|
||||||
_ => panic!("global for worker is not a worker scope")
|
|
||||||
};
|
|
||||||
assert!(worker.is::<DedicatedWorkerGlobalScope>());
|
assert!(worker.is::<DedicatedWorkerGlobalScope>());
|
||||||
|
|
||||||
// A false response causes the script to terminate
|
// A false response causes the script to terminate
|
||||||
|
|
|
@ -8,7 +8,7 @@ use dom::abstractworker::WorkerScriptMsg;
|
||||||
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
|
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
|
||||||
use dom::bindings::codegen::Bindings::ServiceWorkerGlobalScopeBinding;
|
use dom::bindings::codegen::Bindings::ServiceWorkerGlobalScopeBinding;
|
||||||
use dom::bindings::codegen::Bindings::ServiceWorkerGlobalScopeBinding::ServiceWorkerGlobalScopeMethods;
|
use dom::bindings::codegen::Bindings::ServiceWorkerGlobalScopeBinding::ServiceWorkerGlobalScopeMethods;
|
||||||
use dom::bindings::global::{GlobalRef, global_root_from_context};
|
use dom::bindings::global::global_scope_from_context;
|
||||||
use dom::bindings::inheritance::Castable;
|
use dom::bindings::inheritance::Castable;
|
||||||
use dom::bindings::js::{Root, RootCollection};
|
use dom::bindings::js::{Root, RootCollection};
|
||||||
use dom::bindings::reflector::Reflectable;
|
use dom::bindings::reflector::Reflectable;
|
||||||
|
@ -310,11 +310,9 @@ impl ServiceWorkerGlobalScope {
|
||||||
|
|
||||||
#[allow(unsafe_code)]
|
#[allow(unsafe_code)]
|
||||||
unsafe extern "C" fn interrupt_callback(cx: *mut JSContext) -> bool {
|
unsafe extern "C" fn interrupt_callback(cx: *mut JSContext) -> bool {
|
||||||
let global = global_root_from_context(cx);
|
let worker =
|
||||||
let worker = match global.r() {
|
Root::downcast::<WorkerGlobalScope>(global_scope_from_context(cx))
|
||||||
GlobalRef::Worker(w) => w,
|
.expect("global is not a worker scope");
|
||||||
_ => panic!("global for worker is not a worker scope")
|
|
||||||
};
|
|
||||||
assert!(worker.is::<ServiceWorkerGlobalScope>());
|
assert!(worker.is::<ServiceWorkerGlobalScope>());
|
||||||
|
|
||||||
// A false response causes the script to terminate
|
// A false response causes the script to terminate
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue