From cdcda9fb75d919765e2df54db369c65e032019b8 Mon Sep 17 00:00:00 2001 From: Exidex <16986685+Exidex@users.noreply.github.com> Date: Sun, 8 Sep 2024 16:07:04 +0200 Subject: [PATCH] Fix race condition when restarting plugins that leads to crash --- rust/server/src/plugins/run_status.rs | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/rust/server/src/plugins/run_status.rs b/rust/server/src/plugins/run_status.rs index dc83128..5c13702 100644 --- a/rust/server/src/plugins/run_status.rs +++ b/rust/server/src/plugins/run_status.rs @@ -34,7 +34,7 @@ impl RunStatusHolder { let mut running_plugins = self.running_plugins.lock().expect("lock is poisoned"); running_plugins - .get(plugin_id) + .remove(plugin_id) .expect("value should always exist for specified id") .cancel() } @@ -56,10 +56,3 @@ impl RunStatusGuard { .cancelled_owned() } } - -impl Drop for RunStatusGuard { - fn drop(&mut self) { - let mut running_plugins = self.running_plugins.lock().expect("lock is poisoned"); - running_plugins.remove(&self.id); - } -} \ No newline at end of file