aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/task_queue.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/task_queue.rs')
-rw-r--r--components/script/task_queue.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/components/script/task_queue.rs b/components/script/task_queue.rs
index 4d5d041f24c..04d47de5ac7 100644
--- a/components/script/task_queue.rs
+++ b/components/script/task_queue.rs
@@ -9,8 +9,8 @@ use crate::dom::worker::TrustedWorkerAddress;
use crate::script_runtime::ScriptThreadEventCategory;
use crate::task::TaskBox;
use crate::task_source::TaskSourceName;
+use crossbeam_channel::{self, Receiver, Sender};
use msg::constellation_msg::PipelineId;
-use servo_channel::{base_channel, Receiver, Sender};
use std::cell::Cell;
use std::collections::{HashMap, VecDeque};
use std::default::Default;
@@ -63,7 +63,7 @@ impl<T: QueuedTaskConversion> TaskQueue<T> {
if !first_msg.is_wake_up() {
incoming.push(first_msg);
}
- while let Some(msg) = self.port.try_recv() {
+ while let Ok(msg) = self.port.try_recv() {
if !msg.is_wake_up() {
incoming.push(msg);
}
@@ -110,21 +110,21 @@ impl<T: QueuedTaskConversion> TaskQueue<T> {
/// Reset the queue for a new iteration of the event-loop,
/// returning the port about whose readiness we want to be notified.
- pub fn select(&self) -> &base_channel::Receiver<T> {
+ pub fn select(&self) -> &crossbeam_channel::Receiver<T> {
// This is a new iteration of the event-loop, so we reset the "business" counter.
self.taken_task_counter.set(0);
// We want to be notified when the script-port is ready to receive.
// Hence that's the one we need to include in the select.
- self.port.select()
+ &self.port
}
/// Take a message from the front of the queue, without waiting if empty.
- pub fn recv(&self) -> Option<T> {
- self.msg_queue.borrow_mut().pop_front()
+ pub fn recv(&self) -> Result<T, ()> {
+ self.msg_queue.borrow_mut().pop_front().ok_or(())
}
/// Same as recv.
- pub fn try_recv(&self) -> Option<T> {
+ pub fn try_recv(&self) -> Result<T, ()> {
self.recv()
}