]> xenbits.xensource.com Git - libvirt.git/commitdiff
Fix use-after-free in handling domain taint flags
authorDaniel P. Berrange <berrange@redhat.com>
Wed, 22 Jun 2011 16:33:10 +0000 (17:33 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Wed, 22 Jun 2011 16:39:45 +0000 (17:39 +0100)
* src/conf/domain_conf.c: Fix use after free

src/conf/domain_conf.c

index 11d54ade86ad79edf4e160e118b8f70dce081bb9..3d290fbe30834c945ad772c946dd10e35ed507b3 100644 (file)
@@ -6731,12 +6731,13 @@ static virDomainObjPtr virDomainObjParseXML(virCapsPtr caps,
         char *str = virXMLPropString(nodes[i], "flag");
         if (str) {
             int flag = virDomainTaintTypeFromString(str);
-            VIR_FREE(str);
             if (flag < 0) {
                 virDomainReportError(VIR_ERR_INTERNAL_ERROR,
                                      _("Unknown taint flag %s"), str);
+                VIR_FREE(str);
                 goto error;
             }
+            VIR_FREE(str);
             virDomainObjTaint(obj, flag);
         }
     }