On 13.12.2013 13:38, Nehal J Wani wrote: > While running objecteventtest, it was found that valgrind pointed out the > following memory leak: > > ==13464== 5 bytes in 1 blocks are definitely lost in loss record 7 of 134 > ==13464== at 0x4A0887C: malloc (vg_replace_malloc.c:270) > ==13464== by 0x341F485E21: strdup (strdup.c:42) > ==13464== by 0x4CAE28F: virStrdup (virstring.c:554) > ==13464== by 0x4CF3CBE: virObjectEventCallbackListAddID (object_event.c:286) > ==13464== by 0x4CF49CA: virObjectEventStateRegisterID (object_event.c:729) > ==13464== by 0x4CF73FE: virDomainEventStateRegisterID (domain_event.c:1424) > ==13464== by 0x4D7358F: testConnectDomainEventRegisterAny (test_driver.c:6032) > ==13464== by 0x4D600C8: virConnectDomainEventRegisterAny (libvirt.c:19128) > ==13464== by 0x402409: testDomainStartStopEvent (objecteventtest.c:232) > ==13464== by 0x403451: virtTestRun (testutils.c:138) > ==13464== by 0x402012: mymain (objecteventtest.c:395) > ==13464== by 0x403AF2: virtTestMain (testutils.c:593) > ==13464== > > --- > Should we be introducing virObjectMetaFree() and/or virObjectEventCallbackFree() ? > src/conf/object_event.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/src/conf/object_event.c b/src/conf/object_event.c > index ec00aaf..399927b 100644 > --- a/src/conf/object_event.c > +++ b/src/conf/object_event.c > @@ -137,6 +137,9 @@ virObjectEventCallbackListRemoveID(virConnectPtr conn, > if (freecb) > (*freecb)(cbList->callbacks[i]->opaque); > virObjectUnref(cbList->callbacks[i]->conn); > + if (cbList->callbacks[i]->meta) > + VIR_FREE(cbList->callbacks[i]->meta->name); > + VIR_FREE(cbList->callbacks[i]->meta); > VIR_FREE(cbList->callbacks[i]); > > if (i < (cbList->count - 1)) > ACKed & pushed. Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list