diff --git a/ChangeLog b/ChangeLog index 50d79ad6d2..33dcc3228d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Mar 31 14:25:18 CEST 2009 Daniel Veillard + + * src/util.c: fix virRun() to prevent zombies on pipe errors, + patch by Ryota Ozaki + Fri Mar 27 11:44:22 GMT 2009 Daniel P. Berrange * src/qemu_driver.c: Don't try to query balloon if guest diff --git a/src/util.c b/src/util.c index a40ff1760e..016cb626d7 100644 --- a/src/util.c +++ b/src/util.c @@ -681,8 +681,11 @@ virRun(virConnectPtr conn, goto error; } - if (virPipeReadUntilEOF(conn, outfd, errfd, &outbuf, &errbuf) < 0) + if (virPipeReadUntilEOF(conn, outfd, errfd, &outbuf, &errbuf) < 0) { + while (waitpid(childpid, &exitstatus, 0) == -1 && errno == EINTR) + ; goto error; + } if (outbuf) DEBUG("Command stdout: %s", outbuf);