summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMica White <botahamec@gmail.com>2024-12-23 12:59:39 -0500
committerMica White <botahamec@gmail.com>2024-12-23 13:43:10 -0500
commit2819f647e893662310867e74dc6d7520628d5250 (patch)
tree18e6bdc45e7a9919b11e6f685c90a100a9d900e2
parentfac92d4663813b1ea759282cccec4e82043fd118 (diff)
Fix inifinite loop
-rw-r--r--src/collection/retry.rs3
-rw-r--r--src/lockable.rs2
-rw-r--r--src/poisonable/flag.rs4
3 files changed, 8 insertions, 1 deletions
diff --git a/src/collection/retry.rs b/src/collection/retry.rs
index e5246cd..fb2401e 100644
--- a/src/collection/retry.rs
+++ b/src/collection/retry.rs
@@ -171,6 +171,9 @@ unsafe impl<L: Lockable> RawLock for RetryingLockCollection<L> {
continue 'outer;
}
}
+
+ // safety: we locked all the data
+ break;
}
}
diff --git a/src/lockable.rs b/src/lockable.rs
index b098b25..78f008e 100644
--- a/src/lockable.rs
+++ b/src/lockable.rs
@@ -1,6 +1,6 @@
use std::mem::MaybeUninit;
-use crate::rwlock::{ReadLock, RwLock, RwLockReadRef, RwLockWriteRef, WriteLock};
+use crate::rwlock::{ReadLock, RwLockReadRef, RwLockWriteRef, WriteLock};
use lock_api::RawRwLock;
diff --git a/src/poisonable/flag.rs b/src/poisonable/flag.rs
index a692685..7714f5f 100644
--- a/src/poisonable/flag.rs
+++ b/src/poisonable/flag.rs
@@ -35,4 +35,8 @@ impl PoisonFlag {
pub fn clear_poison(&self) {
()
}
+
+ pub fn poison(&self) {
+ ()
+ }
}