[libvirt] [PATCH] bridge: avoid double free
Laine Stump
laine at laine.org
Mon Dec 20 13:30:45 UTC 2010
On 12/20/2010 06:31 AM, Paweł Krześniak wrote:
> ---
> src/network/bridge_driver.c | 1 -
> 1 files changed, 0 insertions(+), 1 deletions(-)
>
> diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
> index c3f32d7..b0834ae 100644
> --- a/src/network/bridge_driver.c
> +++ b/src/network/bridge_driver.c
> @@ -557,7 +557,6 @@ dhcpStartDhcpDaemon(virNetworkObjPtr network)
>
> cmd = virCommandNew(DNSMASQ);
> if (networkBuildDnsmasqArgv(network, pidfile, cmd)< 0) {
> - VIR_FREE(pidfile);
> goto cleanup;
> }
Technically not a double free, since VIR_FREE will set the pointer to
NULL, turning the second call (at cleanup) into a NOP, but still a
worthwhile cleanup.
This crept in when I recently converted the function from virRun to
virCommand - previously there had been a "return -1" after this
VIR_FREE(), and I changed it to "goto cleanup" so there was a single
exit point from the function.
ACK. I added your name to the AUTHORS file and pushed the result.
Thanks for picking this out! Since it seems you've been looking through
bridge_driver.c in a fair amount of detail, maybe you'd like to take a
look at the patches I just posted this morning to support IPv6 in the
bridge driver:
https://www.redhat.com/archives/libvir-list/2010-December/msg00765.html
More information about the libvir-list
mailing list