2010/12/17 Eric Blake <eblake@xxxxxxxxxx>: > On 12/17/2010 11:56 AM, Matthias Bolte wrote: >> XPCOM returns an array as a pointer to an array of pointers to the >> actual items. When the array isn't needed anymore the items are >> released, but the actual array containing the pointers to the items >> was not freed and leaked. >> >> Free the actual array using ComUnallocMem. >> >> This doesn't affect MSCOM as SafeArrayDestroy releases all items >> and frees the array. >> --- >> Âsrc/vbox/vbox_XPCOMCGlue.c | Â Â4 ++++ >> Â1 files changed, 4 insertions(+), 0 deletions(-) >> >> diff --git a/src/vbox/vbox_XPCOMCGlue.c b/src/vbox/vbox_XPCOMCGlue.c >> index 5992350..dcaf682 100644 >> --- a/src/vbox/vbox_XPCOMCGlue.c >> +++ b/src/vbox/vbox_XPCOMCGlue.c >> @@ -339,6 +339,8 @@ vboxArrayRelease(vboxArray *array) >> Â Â Â Â Â} >> Â Â Â} >> >> + Â ÂpVBoxFuncs_v2_2->pfnComUnallocMem(array->items); >> + > > ACK. ÂWas this the leak you were telling me on IRC that exists even in > the XPCOM example code? ÂAnd certainly easier to plug given the wrapper > function you created in 4/6 than to plug at every call site. Yes, that's the leak that's also in the XPCOM example code in the VirtualBox SDK. Thanks, pushed. Matthias -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list