[libvirt] [PATCH] cpu: Fix memory leaks in x86FeatureLoad and x86ModelLoad

Daniel Veillard veillard at redhat.com
Tue Dec 22 10:19:02 UTC 2009


On Tue, Dec 22, 2009 at 02:14:21AM +0100, Matthias Bolte wrote:
> Also backup and restore the original ctxt->node value in x86FeatureLoad.
> ---
>  src/cpu/cpu_x86.c |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
> 
> diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c
> index af0a65b..7c50261 100644
> --- a/src/cpu/cpu_x86.c
> +++ b/src/cpu/cpu_x86.c
> @@ -274,6 +274,7 @@ x86FeatureLoad(xmlXPathContextPtr ctxt,
>  {
>      struct x86_map *map = data;
>      xmlNodePtr *nodes = NULL;
> +    xmlNodePtr ctxt_node = ctxt->node;
>      struct x86_feature *feature = NULL;
>      int ret = 0;
>      int i;
> @@ -340,6 +341,9 @@ x86FeatureLoad(xmlXPathContextPtr ctxt,
>      }
>  
>  out:
> +    ctxt->node = ctxt_node;
> +    VIR_FREE(nodes);
> +
>      return ret;

  ah, right we are changing ctxt->node there, good catch !

>  no_memory:
> @@ -664,6 +668,7 @@ x86ModelLoad(xmlXPathContextPtr ctxt,
>      }
>  
>  out:
> +    VIR_FREE(nodes);
>      return ret;
>  
>  no_memory:

  Yup, ACK

   thanks !

Daniel

-- 
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel at veillard.com  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/




More information about the libvir-list mailing list