auto merge of #4148 : jdm/servo/sniffix, r=glennw

...locking recv_opt vs. non-blocking try_recv.
This commit is contained in:
bors-servo 2014-11-28 23:27:45 -07:00
commit ac4d2cbb78

View file

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//! A task that sniffs data //! A task that sniffs data
use std::comm::{channel, Receiver, Sender, Disconnected}; use std::comm::{channel, Receiver, Sender};
use std::task::TaskBuilder; use std::task::TaskBuilder;
use resource_task::{TargetedLoadResponse}; use resource_task::{TargetedLoadResponse};
@ -33,15 +33,11 @@ impl SnifferManager {
impl SnifferManager { impl SnifferManager {
fn start(self) { fn start(self) {
loop { loop {
match self.data_receiver.try_recv() { match self.data_receiver.recv_opt() {
Ok(snif_data) => { Ok(snif_data) => {
let result = snif_data.consumer.send_opt(snif_data.load_response); let _ = snif_data.consumer.send_opt(snif_data.load_response);
if result.is_err() {
break;
}
} }
Err(Disconnected) => break, Err(_) => break,
Err(_) => (),
} }
} }
} }