diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/libcore/arc.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libcore/arc.rs b/src/libcore/arc.rs index 9c46df9731b..6a27c0b7ade 100644 --- a/src/libcore/arc.rs +++ b/src/libcore/arc.rs @@ -112,6 +112,7 @@ impl methods<T: send> for exclusive<T> { unsafe fn with<U>(f: fn(sys::condition, x: &mut T) -> U) -> U { let ptr: ~arc_data<ex_data<T>> = unsafe::reinterpret_cast(self.data); + assert ptr.count > 0; let r = { let rec: &ex_data<T> = &(*ptr).data; rec.lock.lock_cond(|c| f(c, &mut rec.data)) |
