From 56ba8445a765c2c6f3f51bb3227d4d97a0d29bbc Mon Sep 17 00:00:00 2001 From: Vitaly _Vi Shukela Date: Sun, 17 Sep 2023 14:01:49 +0200 Subject: [PATCH] Prevent zombies in --exec-exit-on-disconnect mode. Addresses #196. --- src/process_peer.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/process_peer.rs b/src/process_peer.rs index 56ea376..d5399c9 100644 --- a/src/process_peer.rs +++ b/src/process_peer.rs @@ -279,6 +279,7 @@ impl AsyncWrite for ProcessPeer { impl Drop for ForgetfulProcess { fn drop(&mut self) { + use futures::Future; let mut chld = self.chld.take().unwrap(); if self.exit_on_disconnect { debug!("Forcing child process to exit"); @@ -288,9 +289,12 @@ impl Drop for ForgetfulProcess { warn!("Error terminating child process: {}", e); } } - drop(chld); + tokio::spawn( + chld.map(|_exc: ExitStatus| { + + }).map_err(|_|()) + ); } else { - use futures::Future; tokio::spawn( chld.map(|exc: ExitStatus| { if exc.success() {