[Libguestfs] [PATCH] check the pid is > 0 before calling waitpid()
Angus Salkeld
asalkeld at redhat.com
Tue Mar 15 11:52:33 UTC 2011
On Mon, Mar 14, 2011 at 11:46:21AM +0000, Richard W.M. Jones wrote:
> On Mon, Mar 14, 2011 at 10:40:12PM +1100, Angus Salkeld wrote:
> > Signed-off-by: Angus Salkeld <asalkeld at redhat.com>
> > ---
> > src/launch.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/src/launch.c b/src/launch.c
> > index e50985d..8de2857 100644
> > --- a/src/launch.c
> > +++ b/src/launch.c
> > @@ -769,7 +769,7 @@ launch_appliance (guestfs_h *g)
> > }
> > if (g->pid > 0) kill (g->pid, 9);
> > if (g->recoverypid > 0) kill (g->recoverypid, 9);
> > - waitpid (g->pid, NULL, 0);
> > + if (g->pid > 0) waitpid (g->pid, NULL, 0);
> > if (g->recoverypid > 0) waitpid (g->recoverypid, NULL, 0);
> > g->fd[0] = -1;
> > g->fd[1] = -1;
> > --
> > 1.7.4.1
>
> ACK. I'll push this in a moment.
>
> Note that for any changes that you would like added to the RHEL 6.2
> package, you must file a bug:
> https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Red%20Hat%20Enterprise%20Linux%206
>
I finally managed to build and test this. I missed a simerlar change in src/guestfs.c
So we need another little patch (attached).
-Angus
> Rich.
>
> --
> Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
> libguestfs lets you edit virtual machines. Supports shell scripting,
> bindings from many languages. http://libguestfs.org
-------------- next part --------------
>From ea44b9bb9dcb0dcf3f3a37d20e25233c07aabb05 Mon Sep 17 00:00:00 2001
From: Angus Salkeld <asalkeld at redhat.com>
Date: Tue, 15 Mar 2011 22:43:02 +1100
Subject: [PATCH] check the pid is > 0 before calling waitpid()
Signed-off-by: Angus Salkeld <asalkeld at redhat.com>
---
src/guestfs.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/guestfs.c b/src/guestfs.c
index 8b7ab4d..4085506 100644
--- a/src/guestfs.c
+++ b/src/guestfs.c
@@ -212,7 +212,7 @@ guestfs_close (guestfs_h *g)
g->sock = -1;
/* Wait for subprocess(es) to exit. */
- waitpid (g->pid, NULL, 0);
+ if (g->pid > 0) waitpid (g->pid, NULL, 0);
if (g->recoverypid > 0) waitpid (g->recoverypid, NULL, 0);
/* Remove tmpfiles. */
--
1.7.4
More information about the Libguestfs
mailing list