mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Pass the script channel to DedicatedWorkerGlobalScope::run_worker_scope rather than creating it there.
This allows us to create the Worker object before calling DedicatedWorkerGlobalScope::run_worker_scope, which is necessary to pass a pointer to the worker to it.
This commit is contained in:
parent
d9105ca9b4
commit
4f7c7fc808
2 changed files with 6 additions and 6 deletions
|
@ -62,9 +62,9 @@ impl DedicatedWorkerGlobalScope {
|
||||||
|
|
||||||
impl DedicatedWorkerGlobalScope {
|
impl DedicatedWorkerGlobalScope {
|
||||||
pub fn run_worker_scope(worker_url: Url,
|
pub fn run_worker_scope(worker_url: Url,
|
||||||
resource_task: ResourceTask) -> ScriptChan {
|
resource_task: ResourceTask,
|
||||||
let (receiver, sender) = ScriptChan::new();
|
receiver: Receiver<ScriptMsg>,
|
||||||
let sender_clone = sender.clone();
|
sender: ScriptChan) {
|
||||||
TaskBuilder::new()
|
TaskBuilder::new()
|
||||||
.native()
|
.native()
|
||||||
.named(format!("Web Worker at {}", worker_url.serialize()))
|
.named(format!("Web Worker at {}", worker_url.serialize()))
|
||||||
|
@ -109,7 +109,6 @@ impl DedicatedWorkerGlobalScope {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return sender_clone;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,8 +45,9 @@ impl Worker {
|
||||||
};
|
};
|
||||||
|
|
||||||
let resource_task = global.resource_task();
|
let resource_task = global.resource_task();
|
||||||
let sender = DedicatedWorkerGlobalScope::run_worker_scope(
|
let (receiver, sender) = ScriptChan::new();
|
||||||
worker_url, resource_task);
|
DedicatedWorkerGlobalScope::run_worker_scope(
|
||||||
|
worker_url, resource_task, receiver, sender.clone());
|
||||||
Ok(Worker::new(global, sender))
|
Ok(Worker::new(global, sender))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue