aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLars Bergstrom <lbergstrom@mozilla.com>2013-08-23 10:34:32 -0500
committerLars Bergstrom <lbergstrom@mozilla.com>2013-08-23 11:11:01 -0500
commitecfa798abca02da5be7eb63667da238ecdd5282c (patch)
treec41944a2d92136bf3c932dd361389a0a055502d0 /src
parenta074267e23814a155dcfb750b710b82590cef674 (diff)
downloadservo-ecfa798abca02da5be7eb63667da238ecdd5282c.tar.gz
servo-ecfa798abca02da5be7eb63667da238ecdd5282c.zip
Change the profiler loop to use try_recv so that the task
will exit during shutdown instead of crashing trying to recv on a closed port.
Diffstat (limited to 'src')
-rw-r--r--src/components/util/time.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/components/util/time.rs b/src/components/util/time.rs
index cfdb037c4f0..4dda2457ef9 100644
--- a/src/components/util/time.rs
+++ b/src/components/util/time.rs
@@ -131,8 +131,11 @@ impl Profiler {
pub fn start(&mut self) {
loop {
- let msg = self.port.recv();
- self.handle_msg(msg);
+ let msg = self.port.try_recv();
+ match msg {
+ Some (msg) => self.handle_msg(msg),
+ None => break
+ }
}
}