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

Matthias Bolte matthias.bolte at googlemail.com
Tue Dec 22 01:14:21 UTC 2009


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;
 
 no_memory:
@@ -664,6 +668,7 @@ x86ModelLoad(xmlXPathContextPtr ctxt,
     }
 
 out:
+    VIR_FREE(nodes);
     return ret;
 
 no_memory:
-- 
1.6.0.4




More information about the libvir-list mailing list