authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-09-08 01:23:48-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-09-08 01:23:48-04:00
log2c8ff1d47bab77295920cec7b0cb2d40257d2167
tree6b9439492252c70d87eedf8f25f58c32fbea2fee
parent838d52a8beaf1eaa9ca7efe1d586d1ad4925560e

std.ChildProcess.spawn: handle 0 from waitpid correctly


1 files changed, 3 insertions(+), 0 deletions(-)

std/os/child_process.zig+3
...@@ -340,6 +340,9 @@ extern fn sigchld_handler(_: i32) {...@@ -340,6 +340,9 @@ extern fn sigchld_handler(_: i32) {
340 while (true) {340 while (true) {
341 var status: i32 = undefined;341 var status: i32 = undefined;
342 const pid_result = posix.waitpid(-1, &status, posix.WNOHANG);342 const pid_result = posix.waitpid(-1, &status, posix.WNOHANG);
343 if (pid_result == 0) {
344 return;
345 }
343 const err = posix.getErrno(pid_result);346 const err = posix.getErrno(pid_result);
344 if (err > 0) {347 if (err > 0) {
345 if (err == posix.ECHILD) {348 if (err == posix.ECHILD) {