summaryrefslogtreecommitdiff
path: root/src/sync.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/sync.rs')
-rw-r--r--src/sync.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/sync.rs b/src/sync.rs
index 38cffc8..18fc912 100644
--- a/src/sync.rs
+++ b/src/sync.rs
@@ -122,11 +122,11 @@ impl<T> interface::Mutex for SpinLock<T> {
fn lock<'a, R>(&'a self, f: impl FnOnce(&'a mut T) -> R) -> R {
loop {
// Loop until acquired the lock
- if let Ok(false) =
- self.lock
- .compare_exchange(false, true, Ordering::Acquire, Ordering::Relaxed)
+ match self.lock
+ .compare_exchange(false, true, Ordering::Acquire, Ordering::Relaxed)
{
- break;
+ Ok(_) => { break; }
+ _ => {}
}
}
let data = unsafe { &mut *self.data.get() };