From: Pavel Hrdina <[email protected]>

Use g_auto() for every virBuffer in this function to make sure none of
them will leak memory. It is not necessary to use on all of them because
for some of the buffers virXMLFormatElement() is called before any
return from the function but for consistency reasons it's better to use
g_auto() for all cases.

Fixes: d9b34ad12b2da231431a761b03ca038cdd44bd42
Signed-off-by: Pavel Hrdina <[email protected]>
---
 src/conf/network_conf.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/conf/network_conf.c b/src/conf/network_conf.c
index 17ef1c2a08..abd4c6eb4e 100644
--- a/src/conf/network_conf.c
+++ b/src/conf/network_conf.c
@@ -2065,8 +2065,8 @@ static int
 virNetworkIPDefFormat(virBuffer *buf,
                       const virNetworkIPDef *def)
 {
-    virBuffer ipAttrBuf = VIR_BUFFER_INITIALIZER;
-    virBuffer ipChildBuf = VIR_BUFFER_INIT_CHILD(buf);
+    g_auto(virBuffer) ipAttrBuf = VIR_BUFFER_INITIALIZER;
+    g_auto(virBuffer) ipChildBuf = VIR_BUFFER_INIT_CHILD(buf);
 
     if (def->family)
         virBufferAsprintf(&ipAttrBuf, " family='%s'", def->family);
@@ -2093,12 +2093,12 @@ virNetworkIPDefFormat(virBuffer *buf,
     virBufferEscapeString(&ipChildBuf, "<tftp root='%s'/>\n",
                           def->tftproot);
     if ((def->nranges || def->nhosts)) {
-        virBuffer dhcpChildBuf = VIR_BUFFER_INIT_CHILD(&ipChildBuf);
+        g_auto(virBuffer) dhcpChildBuf = VIR_BUFFER_INIT_CHILD(&ipChildBuf);
         size_t i;
 
         for (i = 0; i < def->nranges; i++) {
-            virBuffer rangeAttrBuf = VIR_BUFFER_INITIALIZER;
-            virBuffer rangeChildBuf = VIR_BUFFER_INIT_CHILD(&dhcpChildBuf);
+            g_auto(virBuffer) rangeAttrBuf = VIR_BUFFER_INITIALIZER;
+            g_auto(virBuffer) rangeChildBuf = 
VIR_BUFFER_INIT_CHILD(&dhcpChildBuf);
             virSocketAddrRange addr = def->ranges[i].addr;
             virNetworkDHCPLeaseTimeDef *lease = def->ranges[i].lease;
             g_autofree char *saddr = NULL;
@@ -2125,8 +2125,8 @@ virNetworkIPDefFormat(virBuffer *buf,
             virXMLFormatElement(&dhcpChildBuf, "range", &rangeAttrBuf, 
&rangeChildBuf);
         }
         for (i = 0; i < def->nhosts; i++) {
-            virBuffer hostAttrBuf = VIR_BUFFER_INITIALIZER;
-            virBuffer hostChildBuf = VIR_BUFFER_INIT_CHILD(&dhcpChildBuf);
+            g_auto(virBuffer) hostAttrBuf = VIR_BUFFER_INITIALIZER;
+            g_auto(virBuffer) hostChildBuf = 
VIR_BUFFER_INIT_CHILD(&dhcpChildBuf);
             virNetworkDHCPLeaseTimeDef *lease = def->hosts[i].lease;
 
             if (def->hosts[i].mac)
@@ -2155,7 +2155,7 @@ virNetworkIPDefFormat(virBuffer *buf,
             virXMLFormatElement(&dhcpChildBuf, "host", &hostAttrBuf, 
&hostChildBuf);
         }
         if (def->bootfile) {
-            virBuffer bootpAttrBuf = VIR_BUFFER_INITIALIZER;
+            g_auto(virBuffer) bootpAttrBuf = VIR_BUFFER_INITIALIZER;
 
             virBufferEscapeString(&bootpAttrBuf, " file='%s'", def->bootfile);
             if (VIR_SOCKET_ADDR_VALID(&def->bootserver)) {
-- 
2.53.0

Reply via email to