mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Enter realms more consistently during the script event loop.
This commit is contained in:
parent
9ea1399c30
commit
864e072d5c
6 changed files with 52 additions and 5 deletions
|
@ -9,6 +9,7 @@ use crate::dom::dedicatedworkerglobalscope::{AutoWorkerReset, DedicatedWorkerScr
|
|||
use crate::dom::globalscope::GlobalScope;
|
||||
use crate::dom::worker::TrustedWorkerAddress;
|
||||
use crate::dom::workerglobalscope::WorkerGlobalScope;
|
||||
use crate::realms::enter_realm;
|
||||
use crate::script_runtime::{CommonScriptMsg, ScriptChan, ScriptPort};
|
||||
use crate::task_queue::{QueuedTaskConversion, TaskQueue};
|
||||
use crossbeam_channel::{Receiver, Sender};
|
||||
|
@ -140,6 +141,7 @@ pub fn run_worker_event_loop<T, WorkerMsg, Event>(
|
|||
}
|
||||
// Step 3
|
||||
for event in sequential {
|
||||
let _realm = enter_realm(&*worker_scope);
|
||||
if !worker_scope.handle_event(event) {
|
||||
// Shutdown
|
||||
return;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue