diff options
| author | tv <tv@krebsco.de> | 2026-10-26 04:20:52 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-26 04:20:52 +0100 |
| commit | 2ff446bdb5c5b82b653eac822061aaeb686c3ccc (patch) | |
| tree | 24b34021a6f4f2029c59c7909c5174ad29136a69 /src/transport/traffic.rs | |
| parent | 735b27ad691f768027d6034a3f50efbd68feda89 (diff) | |
unify lock logic
Diffstat (limited to 'src/transport/traffic.rs')
| -rw-r--r-- | src/transport/traffic.rs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/transport/traffic.rs b/src/transport/traffic.rs index 9dcd91a..3d17860 100644 --- a/src/transport/traffic.rs +++ b/src/transport/traffic.rs @@ -16,6 +16,7 @@ use async_trait::async_trait; use serde::Serialize; use utoipa::ToSchema; +use crate::locks::MutexExt; use crate::transport::{EncodedMessage, MessageHandler, MessageKind, ParsedMessage, Transport}; #[derive(Debug, Default, Clone, Copy, Serialize, ToSchema)] @@ -79,9 +80,7 @@ pub struct Traffic { impl Traffic { fn lock(&self) -> MutexGuard<'_, Table> { - self.table - .lock() - .unwrap_or_else(|poisoned| poisoned.into_inner()) + self.table.lock_or_recover() } fn count(&self, peer: &str, bytes: usize, pick: impl Fn(&mut PeerTraffic) -> &mut Counter) { |
