diff options
author | Ms2ger <ms2ger@gmail.com> | 2014-07-18 12:24:15 +0200 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2014-08-12 17:47:18 +0200 |
commit | e8bd66cfa9ae46be42d22b74275c8af80c055faa (patch) | |
tree | f67169b831e8daef5caa91e299164847773be38b /src/components/script/script_task.rs | |
parent | 4f7c7fc808867d68ec15f172711a94af2b9a43ab (diff) | |
download | servo-e8bd66cfa9ae46be42d22b74275c8af80c055faa.tar.gz servo-e8bd66cfa9ae46be42d22b74275c8af80c055faa.zip |
Store a pointer to the Worker in the DedicatedWorkerGlobalScope.
Diffstat (limited to 'src/components/script/script_task.rs')
-rw-r--r-- | src/components/script/script_task.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/components/script/script_task.rs b/src/components/script/script_task.rs index ba6cd12c372..090cf38ee47 100644 --- a/src/components/script/script_task.rs +++ b/src/components/script/script_task.rs @@ -20,6 +20,7 @@ use dom::eventtarget::{EventTarget, EventTargetHelpers}; use dom::node; use dom::node::{ElementNodeTypeId, Node, NodeHelpers}; use dom::window::{TimerId, Window, WindowHelpers}; +use dom::worker::{Worker, TrustedWorkerAddress}; use dom::xmlhttprequest::{TrustedXHRAddress, XMLHttpRequest, XHRProgress}; use html::hubbub_html_parser::HtmlParserResult; use html::hubbub_html_parser::{HtmlDiscoveredStyle, HtmlDiscoveredScript}; @@ -86,6 +87,8 @@ pub enum ScriptMsg { /// Message sent through Worker.postMessage (only dispatched to /// DedicatedWorkerGlobalScope). DOMMessage(DOMString), + /// Releases one reference to the Worker object (dispatched to all tasks). + WorkerRelease(TrustedWorkerAddress), } /// Encapsulates internal communication within the script task. @@ -441,6 +444,7 @@ impl ScriptTask { FromConstellation(ResizeMsg(..)) => fail!("should have handled ResizeMsg already"), FromScript(XHRProgressMsg(addr, progress)) => XMLHttpRequest::handle_xhr_progress(addr, progress), FromScript(DOMMessage(..)) => fail!("unexpected message"), + FromScript(WorkerRelease(addr)) => Worker::handle_release(addr), } } |