From bbdb78f773484342f51f5f2f532dfb25b3826468 Mon Sep 17 00:00:00 2001 From: Ivan Moiseev Date: Sat, 12 Oct 2024 15:56:26 +0200 Subject: [PATCH] feat: remove drop --- crates/librqbit/src/session.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/crates/librqbit/src/session.rs b/crates/librqbit/src/session.rs index 5f26992..bc4e415 100644 --- a/crates/librqbit/src/session.rs +++ b/crates/librqbit/src/session.rs @@ -1365,16 +1365,17 @@ impl Session { } pub async fn pause(&self, handle: &ManagedTorrentHandle) -> anyhow::Result<()> { - let mut g = handle.locked.write(); - let prev = g.paused; - g.paused = true; - drop(g); + let prev_state; + { + let mut g = handle.locked.write(); + prev_state = g.paused; + g.paused = true; + } - handle.locked.write().paused = true; match handle.pause() { Ok(()) => {} Err(err) => { - handle.locked.write().paused = prev; + handle.locked.write().paused = prev_state; return Err(err); } }