std.ChildProcess.spawn: handle 0 from waitpid correctly

This commit is contained in:
Andrew Kelley 2017-09-08 01:23:48 -04:00
parent 838d52a8be
commit 2c8ff1d47b

View File

@ -340,6 +340,9 @@ extern fn sigchld_handler(_: i32) {
while (true) {
var status: i32 = undefined;
const pid_result = posix.waitpid(-1, &status, posix.WNOHANG);
if (pid_result == 0) {
return;
}
const err = posix.getErrno(pid_result);
if (err > 0) {
if (err == posix.ECHILD) {