Skip to content

Commit 5bcb639

Browse files
committed
std::rt: Remove extra boxes from MessageQueue and SleeperList
1 parent 761f5fb commit 5bcb639

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

src/libstd/rt/message_queue.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,13 @@ use unstable::sync::Exclusive;
2020
use clone::Clone;
2121

2222
pub struct MessageQueue<T> {
23-
// XXX: Another mystery bug fixed by boxing this lock
24-
priv queue: ~Exclusive<~[T]>
23+
priv queue: Exclusive<~[T]>
2524
}
2625

2726
impl<T: Send> MessageQueue<T> {
2827
pub fn new() -> MessageQueue<T> {
2928
MessageQueue {
30-
queue: ~Exclusive::new(~[])
29+
queue: Exclusive::new(~[])
3130
}
3231
}
3332

@@ -51,7 +50,7 @@ impl<T: Send> MessageQueue<T> {
5150
}
5251
}
5352

54-
impl<T> Clone for MessageQueue<T> {
53+
impl<T: Send> Clone for MessageQueue<T> {
5554
fn clone(&self) -> MessageQueue<T> {
5655
MessageQueue {
5756
queue: self.queue.clone()

src/libstd/rt/sleeper_list.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ use rt::sched::SchedHandle;
2020
use clone::Clone;
2121

2222
pub struct SleeperList {
23-
priv stack: ~Exclusive<~[SchedHandle]>
23+
priv stack: Exclusive<~[SchedHandle]>
2424
}
2525

2626
impl SleeperList {
2727
pub fn new() -> SleeperList {
2828
SleeperList {
29-
stack: ~Exclusive::new(~[])
29+
stack: Exclusive::new(~[])
3030
}
3131
}
3232

@@ -56,4 +56,4 @@ impl Clone for SleeperList {
5656
stack: self.stack.clone()
5757
}
5858
}
59-
}
59+
}

0 commit comments

Comments
 (0)