On 08.12.2016 16:29, Cédric Bosdonnat wrote: > If the monitor doesn't hold a reference to the domain object > the object may be destroyed before the monitor actually stops. > --- > v2: Moved vm ref upper, removed vm unref in error case. > > src/lxc/lxc_monitor.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/src/lxc/lxc_monitor.c b/src/lxc/lxc_monitor.c > index d828d528a..9cab6c203 100644 > --- a/src/lxc/lxc_monitor.c > +++ b/src/lxc/lxc_monitor.c > @@ -175,7 +175,7 @@ virLXCMonitorPtr virLXCMonitorNew(virDomainObjPtr vm, > mon->program) < 0) > goto error; > > - mon->vm = vm; > + mon->vm = virObjectRef(vm); > memcpy(&mon->cb, cb, sizeof(mon->cb)); > > virObjectRef(mon); > @@ -201,6 +201,7 @@ static void virLXCMonitorDispose(void *opaque) > if (mon->cb.destroy) > (mon->cb.destroy)(mon, mon->vm); > virObjectUnref(mon->program); > + virObjectUnref(mon->vm); > } > > > Yup, this one looks good. ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list