about summary refs log tree commit diff
path: root/src/libstd/comm/sync.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/comm/sync.rs')
-rw-r--r--src/libstd/comm/sync.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libstd/comm/sync.rs b/src/libstd/comm/sync.rs
index 6228c4c682b..db3f90cad5a 100644
--- a/src/libstd/comm/sync.rs
+++ b/src/libstd/comm/sync.rs
@@ -40,6 +40,7 @@ use kinds::Send;
 use mem;
 use ops::Drop;
 use option::{Some, None, Option};
+use owned::Box;
 use ptr::RawPtr;
 use result::{Result, Ok, Err};
 use rt::local::Local;
@@ -111,7 +112,7 @@ pub enum Failure {
 /// in the meantime. This re-locks the mutex upon returning.
 fn wait(slot: &mut Blocker, f: fn(BlockedTask) -> Blocker,
         lock: &NativeMutex) {
-    let me: ~Task = Local::take();
+    let me: Box<Task> = Local::take();
     me.deschedule(1, |task| {
         match mem::replace(slot, f(task)) {
             NoneBlocked => {}
@@ -445,7 +446,7 @@ impl<T> Buffer<T> {
 
 impl Queue {
     fn enqueue(&mut self, lock: &NativeMutex) {
-        let task: ~Task = Local::take();
+        let task: Box<Task> = Local::take();
         let mut node = Node {
             task: None,
             next: 0 as *mut Node,