diff --git a/src/libstd/comm/mod.rs b/src/libstd/comm/mod.rs index 21db234122b2e..26e235e6d5269 100644 --- a/src/libstd/comm/mod.rs +++ b/src/libstd/comm/mod.rs @@ -599,7 +599,7 @@ impl Chan { // the TLS overhead can be a bit much. n => { assert!(n >= 0); - if n > 0 && n % RESCHED_FREQ == 0 { + if can_resched && n > 0 && n % RESCHED_FREQ == 0 { let task: ~Task = Local::take(); task.maybe_yield(); }