diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2013-12-05 14:56:41 -0800 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2013-12-10 15:13:12 -0800 |
| commit | 8c2ebe1622681c2a93a2fcf2673a5671fd110ead (patch) | |
| tree | a19f92b2d86f6d64356cf4ddc34ff2d38038fad7 /src/libextra/arc.rs | |
| parent | 9a6ebbbeccd926dc9eed1cfc34534bebb590ec75 (diff) | |
| download | rust-8c2ebe1622681c2a93a2fcf2673a5671fd110ead.tar.gz rust-8c2ebe1622681c2a93a2fcf2673a5671fd110ead.zip | |
libextra: Remove various cells involved in `Arc`s.
I could have done this by making `Arc` use RAII, but this is too involved for now.
Diffstat (limited to 'src/libextra/arc.rs')
| -rw-r--r-- | src/libextra/arc.rs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/libextra/arc.rs b/src/libextra/arc.rs index 58007e491da..005328c6934 100644 --- a/src/libextra/arc.rs +++ b/src/libextra/arc.rs @@ -597,7 +597,6 @@ mod tests { use arc::*; - use std::cell::Cell; use std::comm; use std::task; @@ -628,7 +627,6 @@ mod tests { let arc = ~MutexArc::new(false); let arc2 = ~arc.clone(); let (p,c) = comm::oneshot(); - let c = Cell::new(c); do task::spawn { // wait until parent gets in p.recv(); @@ -638,8 +636,9 @@ mod tests { }) } + let mut c = Some(c); arc.access_cond(|state, cond| { - c.take().send(()); + c.take_unwrap().send(()); assert!(!*state); while !*state { cond.wait(); |
