diff options
author | Alex Touchet <alextouchet@outlook.com> | 2018-09-11 09:06:42 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-11 09:06:42 -0700 |
commit | 025b5550fc6f1fd74605b09973ffc606dae7432c (patch) | |
tree | 7dfb1026318b7a0135273b667d3f44e3ee8d737d /components/script/dom/websocket.rs | |
parent | 9a7e1d17f0e054cb9f7eaafeee943a2ec5bc5e26 (diff) | |
parent | 049eb6887e29d8409b1dfe55bc31803f1c3220da (diff) | |
download | servo-025b5550fc6f1fd74605b09973ffc606dae7432c.tar.gz servo-025b5550fc6f1fd74605b09973ffc606dae7432c.zip |
Merge branch 'master' into tidy
Diffstat (limited to 'components/script/dom/websocket.rs')
-rw-r--r-- | components/script/dom/websocket.rs | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/components/script/dom/websocket.rs b/components/script/dom/websocket.rs index 2de8f97d98e..ac0f14ad436 100644 --- a/components/script/dom/websocket.rs +++ b/components/script/dom/websocket.rs @@ -39,8 +39,8 @@ use std::cell::Cell; use std::ptr; use std::thread; use task::{TaskOnce, TaskCanceller}; -use task_source::{TaskSource, TaskSourceName}; -use task_source::networking::NetworkingTaskSource; +use task_source::TaskSource; +use task_source::websocket::WebsocketTaskSource; #[derive(Clone, Copy, Debug, JSTraceable, MallocSizeOf, PartialEq)] enum WebSocketRequestState { @@ -70,7 +70,7 @@ mod close_code { pub fn close_the_websocket_connection( address: Trusted<WebSocket>, - task_source: &NetworkingTaskSource, + task_source: &WebsocketTaskSource, canceller: &TaskCanceller, code: Option<u16>, reason: String, @@ -86,7 +86,7 @@ pub fn close_the_websocket_connection( pub fn fail_the_websocket_connection( address: Trusted<WebSocket>, - task_source: &NetworkingTaskSource, + task_source: &WebsocketTaskSource, canceller: &TaskCanceller, ) { let close_task = CloseTask { @@ -199,11 +199,8 @@ impl WebSocket { }; let _ = global.core_resource_thread().send(CoreResourceMsg::Fetch(request, channels)); - // TODO: use a dedicated task source, - // https://html.spec.whatwg.org/multipage/#websocket-task-source - // When making the switch, also update the task_canceller call. - let task_source = global.networking_task_source(); - let canceller = global.task_canceller(TaskSourceName::Networking); + let task_source = global.websocket_task_source(); + let canceller = global.task_canceller(WebsocketTaskSource::NAME); thread::spawn(move || { while let Ok(event) = dom_event_receiver.recv() { match event { @@ -268,7 +265,13 @@ impl WebSocket { let pipeline_id = self.global().pipeline_id(); self.global() .script_chan() - .send(CommonScriptMsg::Task(WebSocketEvent, task, Some(pipeline_id))) + // TODO: Use a dedicated `websocket-task-source` task source instead. + .send(CommonScriptMsg::Task( + WebSocketEvent, + task, + Some(pipeline_id), + WebsocketTaskSource::NAME, + )) .unwrap(); } @@ -401,10 +404,10 @@ impl WebSocketMethods for WebSocket { // TODO: use a dedicated task source, // https://html.spec.whatwg.org/multipage/#websocket-task-source // When making the switch, also update the task_canceller call. - let task_source = self.global().networking_task_source(); + let task_source = self.global().websocket_task_source(); fail_the_websocket_connection(address, &task_source, - &self.global().task_canceller(TaskSourceName::Networking)); + &self.global().task_canceller(WebsocketTaskSource::NAME)); } WebSocketRequestState::Open => { self.ready_state.set(WebSocketRequestState::Closing); |