2010/10/2 Stefan Berger <stefanb@xxxxxxxxxxxxxxxxxx>: > ÂFixing memory leak shown by valgrind and freeing buffer in two more places. > > Signed-off-by: Stefan Berger <stefanb@xxxxxxxxxx> > > Index: libvirt-acl/src/nwfilter/nwfilter_ebiptables_driver.c > =================================================================== > --- libvirt-acl.orig/src/nwfilter/nwfilter_ebiptables_driver.c > +++ libvirt-acl/src/nwfilter/nwfilter_ebiptables_driver.c > @@ -1508,7 +1508,11 @@ _iptablesCreateRuleInstance(int directio > Â Â } > > Â Â if (virBufferUse(&prefix)) { > - Â Â Â ÂvirBufferVSprintf(&prefix, "%s", virBufferContentAndReset(&buf)); > + Â Â Â Âchar *s = virBufferContentAndReset(&buf); > + > + Â Â Â ÂvirBufferVSprintf(&prefix, "%s", s); You could simplify this to use virBufferAdd(&prefix, s, -1) instead of virBufferVSprintf. > + > + Â Â Â ÂVIR_FREE(s); > > Â Â Â Â final = &prefix; > > @@ -1531,11 +1535,13 @@ _iptablesCreateRuleInstance(int directio > > Âerr_exit: > Â Â virBufferFreeAndReset(&buf); > + Â ÂvirBufferFreeAndReset(&prefix); > > Â Â return -1; > > Âexit_no_error: > Â Â virBufferFreeAndReset(&buf); > + Â ÂvirBufferFreeAndReset(&prefix); > > Â Â return 0; > Â} > ACK. Matthias -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list