Re: [PATCH v3 05/10] conf: Use VIR_AUTOFREE in domain_conf

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 01, 2019 at 11:26:47AM -0500, John Ferlan wrote:
Let's make use of the auto __cleanup capabilities for VIR_FREE consumers.
In some cases adding or removing blank lines for readability.

Signed-off-by: John Ferlan <jferlan@xxxxxxxxxx>
Reviewed-by: Erik Skultety <eskultet@xxxxxxxxxx>
---
src/conf/domain_conf.c | 1080 +++++++++++++---------------------------
1 file changed, 347 insertions(+), 733 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index cbaa32e174..c06c52271c 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c

[...]

@@ -13468,8 +13263,8 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
                                 virDomainGraphicsAuthDefPtr def,
                                 int type)
{
-    char *validTo = NULL;
-    char *connected = virXMLPropString(node, "connected");
+    VIR_AUTOFREE(char *) validTo = NULL;
+    VIR_AUTOFREE(char *) connected = virXMLPropString(node, "connected");

    def->passwd = virXMLPropString(node, "passwd");

@@ -13497,11 +13292,9 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
            virReportError(VIR_ERR_INTERNAL_ERROR,
                           _("cannot parse password validity time '%s', expect YYYY-MM-DDTHH:MM:SS"),
                           validTo);
-            VIR_FREE(validTo);
            VIR_FREE(def->passwd);
            return -1;

Nice, this would have leaked 'connected' before.

        }
-        VIR_FREE(validTo);

        tm.tm_year -= 1900; /* Human epoch starts at 0 BC, not 1900BC */
        tm.tm_mon--; /* Humans start months at 1, computers at 0 */
@@ -13516,10 +13309,8 @@ virDomainGraphicsAuthDefParseXML(xmlNodePtr node,
            virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
                           _("unknown connected value %s"),
                           connected);
-            VIR_FREE(connected);
            return -1;
        }
-        VIR_FREE(connected);

        /* VNC supports connected='keep' only */
        if (type == VIR_DOMAIN_GRAPHICS_TYPE_VNC &&

[...]

@@ -14104,25 +13872,19 @@ virDomainGraphicsDefParseXMLSpice(virDomainGraphicsDefPtr def,
                    virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
                                   _("unknown spice channel name %s"),
                                   name);
-                    VIR_FREE(name);
-                    VIR_FREE(mode);
                    goto error;
                }
                if ((modeval = virDomainGraphicsSpiceChannelModeTypeFromString(mode)) < 0) {
                    virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
                                   _("unknown spice channel mode %s"),
                                   mode);
-                    VIR_FREE(name);
-                    VIR_FREE(mode);
                    goto error;
                }
-                VIR_FREE(name);
-                VIR_FREE(mode);

Nice to see these go.


                def->data.spice.channels[nameval] = modeval;
            } else if (virXMLNodeNameEqual(cur, "image")) {
-                char *compression = virXMLPropString(cur, "compression");
                int compressionVal;
+                VIR_AUTOFREE(char *) compression = virXMLPropString(cur, "compression");

                if (!compression) {
                    virReportError(VIR_ERR_INTERNAL_ERROR, "%s",

[...]

Reviewed-by: Ján Tomko <jtomko@xxxxxxxxxx>

Jano

Attachment: signature.asc
Description: PGP signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux