[libvirt] [PATCH] virNodeDevCapScsiHostParseXML: avoid an unconditional leak
Matthias Bolte
matthias.bolte at googlemail.com
Mon Feb 15 19:24:36 UTC 2010
2010/2/15 Jim Meyering <jim at meyering.net>:
> It looks like there may still be error-path leaks (the buffers
> pointed to by nodes[i]), but that can wait for another day.
No, the xmlNodePtr in the nodes array are owned by the XML document
object and are freed when the xmlDocPtr gets freed.
> >From c293a97ed55c99c87bc658aaffc10831f8ba8c68 Mon Sep 17 00:00:00 2001
> From: Jim Meyering <meyering at redhat.com>
> Date: Mon, 15 Feb 2010 19:54:45 +0100
> Subject: [PATCH] virNodeDevCapScsiHostParseXML: avoid an unconditional leak
>
> * src/conf/node_device_conf.c (virNodeDevCapScsiHostParseXML):
> Free the "nodes" buffer allocated by virXPathNodeSet.
> ---
> src/conf/node_device_conf.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/src/conf/node_device_conf.c b/src/conf/node_device_conf.c
> index 4b65953..09c0f41 100644
> --- a/src/conf/node_device_conf.c
> +++ b/src/conf/node_device_conf.c
> @@ -797,6 +797,7 @@ virNodeDevCapScsiHostParseXML(xmlXPathContextPtr ctxt,
> out:
> VIR_FREE(type);
> ctxt->node = orignode;
> + VIR_FREE(nodes);
> return ret;
> }
>
> --
> 1.7.0.181.g41533
>
Yes, the nodes array is allocated by virXPathNodeSet to return the
list of xmlNodePtrs and needs to be freed here.
ACK.
Matthias
More information about the libvir-list
mailing list