]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: Add cleanup label to virDomainDefParse
authorJiri Denemark <jdenemar@redhat.com>
Mon, 9 Sep 2019 20:35:10 +0000 (22:35 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Tue, 10 Sep 2019 09:54:25 +0000 (11:54 +0200)
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/conf/domain_conf.c

index 7f49c8253f35824e52ccf56188bb9f001f2f269e..17ddebb575c3f7a74a59c6832425de42a2a7c532 100644 (file)
@@ -21517,16 +21517,18 @@ virDomainDefParse(const char *xmlStr,
                   void *parseOpaque,
                   unsigned int flags)
 {
-    xmlDocPtr xml;
+    xmlDocPtr xml = NULL;
     virDomainDefPtr def = NULL;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(domain_definition)")))) {
-        def = virDomainDefParseNode(xml, xmlDocGetRootElement(xml), caps,
-                                    xmlopt, parseOpaque, flags);
-        xmlFreeDoc(xml);
-    }
+    if (!(xml = virXMLParse(filename, xmlStr, _("(domain_definition)"))))
+        goto cleanup;
 
+    def = virDomainDefParseNode(xml, xmlDocGetRootElement(xml), caps,
+                                xmlopt, parseOpaque, flags);
+
+ cleanup:
+    xmlFreeDoc(xml);
     xmlKeepBlanksDefault(keepBlanksDefault);
     return def;
 }