[libvirt] [libvirt-glib 1/7] Fix gvir_config_object_new_from_xml error reporting

Christophe Fergeau cfergeau at redhat.com
Mon Feb 6 11:56:11 UTC 2012


It's currently failing to report parsing errors if the passed in
error is NULL.
---
 libvirt-gconfig/libvirt-gconfig-object.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/libvirt-gconfig/libvirt-gconfig-object.c b/libvirt-gconfig/libvirt-gconfig-object.c
index 2e28208..7e3cb88 100644
--- a/libvirt-gconfig/libvirt-gconfig-object.c
+++ b/libvirt-gconfig/libvirt-gconfig-object.c
@@ -636,10 +636,13 @@ GVirConfigObject *gvir_config_object_new_from_xml(GType type,
     GVirConfigObject *object;
     GVirConfigXmlDoc *doc;
     xmlNodePtr node;
+    GError *tmp_error = NULL;
 
-    node = gvir_config_xml_parse(xml, root_name, error);
-    if ((error != NULL) && (*error != NULL))
+    node = gvir_config_xml_parse(xml, root_name, &tmp_error);
+    if (tmp_error != NULL) {
+        g_propagate_error(error, tmp_error);
         return NULL;
+    }
     doc = gvir_config_xml_doc_new(node->doc);
     object = GVIR_CONFIG_OBJECT(g_object_new(type,
                                              "doc", doc,
-- 
1.7.7.6




More information about the libvir-list mailing list