From 09448cd91e141ee5f8507a2facbc7e05d5f2746b Mon Sep 17 00:00:00 2001 From: Matt Green Date: Tue, 20 Dec 2016 13:21:24 -0500 Subject: [PATCH] Fix reap() hanging when child processes are still running --- src/process.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/process.rs b/src/process.rs index acd4e1d..d2781ed 100644 --- a/src/process.rs +++ b/src/process.rs @@ -102,7 +102,10 @@ mod imp { match waitpid(-self.pgid, Some(WNOHANG)) { Ok(WaitStatus::Exited(_, _)) | Ok(WaitStatus::Signaled(_, _, _)) => finished = finished && true, - Ok(_) => finished = false, + Ok(_) => { + finished = false; + break; + } Err(_) => break, } }