about summary refs log tree commit diff
path: root/src/libcore/rt/message_queue.rs
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-05-18 01:53:40 -0700
committerBrian Anderson <banderson@mozilla.com>2013-05-20 15:20:49 -0700
commitfa18a861fbd934c295990e59b20c7a0498b88f08 (patch)
treeb78555dfbd493a48d91c9c50dbc238829b5c2222 /src/libcore/rt/message_queue.rs
parentd2a1378ed8dd3693511836fdee656d8f79089a73 (diff)
downloadrust-fa18a861fbd934c295990e59b20c7a0498b88f08.tar.gz
rust-fa18a861fbd934c295990e59b20c7a0498b88f08.zip
core::rt: Queues MessageQueue and WorkQueue are cloneable
Diffstat (limited to 'src/libcore/rt/message_queue.rs')
-rw-r--r--src/libcore/rt/message_queue.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/libcore/rt/message_queue.rs b/src/libcore/rt/message_queue.rs
index 014e71d3de6..eaab9288ac8 100644
--- a/src/libcore/rt/message_queue.rs
+++ b/src/libcore/rt/message_queue.rs
@@ -14,6 +14,7 @@ use vec::OwnedVector;
 use cell::Cell;
 use option::*;
 use unstable::sync::{Exclusive, exclusive};
+use clone::Clone;
 
 pub struct MessageQueue<T> {
     // XXX: Another mystery bug fixed by boxing this lock
@@ -41,4 +42,12 @@ impl<T: Owned> MessageQueue<T> {
             }
         }
     }
-}
\ No newline at end of file
+}
+
+impl<T> Clone for MessageQueue<T> {
+    fn clone(&self) -> MessageQueue<T> {
+        MessageQueue {
+            queue: self.queue.clone()
+        }
+    }
+}