diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2013-04-26 14:04:39 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2013-04-29 14:30:56 -0700 |
| commit | 876483dcf4bdcd0001cc25812060bc04cf367f60 (patch) | |
| tree | a1e5c6db1359979b0eb3b595740f541f55b8c104 /src/libstd/sync.rs | |
| parent | f30f54e9d062bdb5b3cb10dd7185470280c1c278 (diff) | |
| download | rust-876483dcf4bdcd0001cc25812060bc04cf367f60.tar.gz rust-876483dcf4bdcd0001cc25812060bc04cf367f60.zip | |
test: Fix tests.
Diffstat (limited to 'src/libstd/sync.rs')
| -rw-r--r-- | src/libstd/sync.rs | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/src/libstd/sync.rs b/src/libstd/sync.rs index 21a6153380c..e86ec793188 100644 --- a/src/libstd/sync.rs +++ b/src/libstd/sync.rs @@ -828,18 +828,22 @@ mod tests { let m = ~Mutex(); let m2 = m.clone(); let mut sharedstate = ~0; - let ptr: *int = &*sharedstate; - do task::spawn || { - let sharedstate: &mut int = - unsafe { cast::transmute(ptr) }; - access_shared(sharedstate, m2, 10); - c.send(()); + { + let ptr: *int = &*sharedstate; + do task::spawn || { + let sharedstate: &mut int = + unsafe { cast::transmute(ptr) }; + access_shared(sharedstate, m2, 10); + c.send(()); + } } - access_shared(sharedstate, m, 10); - let _ = p.recv(); + { + access_shared(sharedstate, m, 10); + let _ = p.recv(); - assert!(*sharedstate == 20); + assert!(*sharedstate == 20); + } fn access_shared(sharedstate: &mut int, m: &Mutex, n: uint) { for n.times { @@ -1106,17 +1110,21 @@ mod tests { let (p,c) = comm::stream(); let x2 = (*x).clone(); let mut sharedstate = ~0; - let ptr: *int = &*sharedstate; - do task::spawn || { - let sharedstate: &mut int = - unsafe { cast::transmute(ptr) }; - access_shared(sharedstate, &x2, mode1, 10); - c.send(()); + { + let ptr: *int = &*sharedstate; + do task::spawn || { + let sharedstate: &mut int = + unsafe { cast::transmute(ptr) }; + access_shared(sharedstate, &x2, mode1, 10); + c.send(()); + } } - access_shared(sharedstate, x, mode2, 10); - let _ = p.recv(); + { + access_shared(sharedstate, x, mode2, 10); + let _ = p.recv(); - assert!(*sharedstate == 20); + assert!(*sharedstate == 20); + } fn access_shared(sharedstate: &mut int, x: &RWlock, mode: RWlockMode, n: uint) { |
