]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Add virBufferFreeAndReset() and replace free()
authorMatthias Bolte <matthias.bolte@googlemail.com>
Wed, 9 Dec 2009 23:00:50 +0000 (00:00 +0100)
committerMatthias Bolte <matthias.bolte@googlemail.com>
Wed, 9 Dec 2009 23:00:50 +0000 (00:00 +0100)
Replace free(virBufferContentAndReset()) with virBufferFreeAndReset().
Update documentation and replace all remaining calls to free() with
calls to VIR_FREE(). Also add missing calls to virBufferFreeAndReset()
and virReportOOMError() in OOM error cases.

41 files changed:
HACKING
daemon/libvirtd.c
docs/hacking.html.in
src/conf/capabilities.c
src/conf/domain_conf.c
src/conf/interface_conf.c
src/conf/network_conf.c
src/conf/node_device_conf.c
src/conf/secret_conf.c
src/conf/storage_conf.c
src/esx/esx_driver.c
src/esx/esx_vi.c
src/esx/esx_vi_methods.c
src/esx/esx_vmx.c
src/libvirt_private.syms
src/node_device/node_device_udev.c
src/opennebula/one_client.c
src/opennebula/one_conf.c
src/openvz/openvz_conf.c
src/openvz/openvz_driver.c
src/phyp/phyp_driver.c
src/qemu/qemu_conf.c
src/qemu/qemu_driver.c
src/remote/remote_driver.c
src/security/security_selinux.c
src/security/virt-aa-helper.c
src/storage/storage_backend.c
src/storage/storage_driver.c
src/uml/uml_conf.c
src/util/buf.c
src/util/buf.h
src/util/conf.c
src/util/logging.c
src/util/qparams.c
src/util/util.c
src/util/virterror.c
src/xen/block_stats.c
src/xen/xend_internal.c
src/xen/xm_internal.c
src/xen/xs_internal.c
tools/virsh.c

diff --git a/HACKING b/HACKING
index 548e2a0245e8730e75bdbb96bf068d4f8329c2f8..3fb111326b26f4074054430b45f17f2477636777 100644 (file)
--- a/HACKING
+++ b/HACKING
@@ -293,10 +293,11 @@ eg typical usage is as follows:
      ...
      virBufferAddLit(&buf, "</domain>\n");
 
-     ....
+     ...
 
      if (virBufferError(&buf)) {
-         __virRaiseError(...);
+         virBufferFreeAndReset(&buf);
+         virReportOOMError(...);
          return NULL;
      }
 
index d4e20ff2dda2dce99a23d5673303d3ce935c3c4c..6b7e33d988ed803dbcdc7132e422564d2744acf3 100644 (file)
@@ -582,7 +582,7 @@ static int qemudListenUnix(struct qemud_server *server,
  cleanup:
     if (sock->fd)
         close(sock->fd);
-    free(sock);
+    VIR_FREE(sock);
     return -1;
 }
 
@@ -803,8 +803,8 @@ static int qemudInitPaths(struct qemud_server *server,
                   _("Resulting path too long for buffer in qemudInitPaths()"));
 
  cleanup:
-    free (dir_prefix);
-    free (sock_dir_prefix);
+    VIR_FREE(dir_prefix);
+    VIR_FREE(sock_dir_prefix);
     return ret;
 }
 
@@ -1452,8 +1452,7 @@ void qemudDispatchClientFailure(struct qemud_client *client) {
         sasl_dispose(&client->saslconn);
         client->saslconn = NULL;
     }
-    free(client->saslUsername);
-    client->saslUsername = NULL;
+    VIR_FREE(client->saslUsername);
 #endif
     if (client->tlssession) {
         gnutls_deinit (client->tlssession);
@@ -2374,19 +2373,19 @@ static void qemudCleanup(struct qemud_server *server) {
         if (sock->watch)
             virEventRemoveHandleImpl(sock->watch);
         close(sock->fd);
-        free(sock);
+        VIR_FREE(sock);
         sock = next;
     }
-    free(server->logDir);
+    VIR_FREE(server->logDir);
 
 #ifdef HAVE_SASL
     if (server->saslUsernameWhitelist) {
         char **list = server->saslUsernameWhitelist;
         while (*list) {
-            free(*list);
+            VIR_FREE(*list);
             list++;
         }
-        free(server->saslUsernameWhitelist);
+        VIR_FREE(server->saslUsernameWhitelist);
     }
 #endif
 
@@ -2743,10 +2742,9 @@ remoteReadConfigFile (struct qemud_server *server, const char *filename)
                 goto free_and_fail;
             }
             unix_sock_gid = grp->gr_gid;
-            VIR_FREE (buf);
+            VIR_FREE(buf);
         }
-        free (unix_sock_group);
-        unix_sock_group = NULL;
+        VIR_FREE(unix_sock_group);
     }
 
     GET_CONF_STR (conf, filename, unix_sock_ro_perms);
@@ -2755,8 +2753,7 @@ remoteReadConfigFile (struct qemud_server *server, const char *filename)
             VIR_ERROR(_("Failed to parse mode '%s'"), unix_sock_ro_perms);
             goto free_and_fail;
         }
-        free (unix_sock_ro_perms);
-        unix_sock_ro_perms = NULL;
+        VIR_FREE(unix_sock_ro_perms);
     }
 
     GET_CONF_STR (conf, filename, unix_sock_rw_perms);
@@ -2765,8 +2762,7 @@ remoteReadConfigFile (struct qemud_server *server, const char *filename)
             VIR_ERROR(_("Failed to parse mode '%s'"), unix_sock_rw_perms);
             goto free_and_fail;
         }
-        free (unix_sock_rw_perms);
-        unix_sock_rw_perms = NULL;
+        VIR_FREE(unix_sock_rw_perms);
     }
 
     GET_CONF_STR (conf, filename, unix_sock_dir);
@@ -2801,12 +2797,11 @@ remoteReadConfigFile (struct qemud_server *server, const char *filename)
 
  free_and_fail:
     virConfFree (conf);
-    free (mdns_name);
-    mdns_name = NULL;
-    free (unix_sock_ro_perms);
-    free (unix_sock_rw_perms);
-    free (unix_sock_group);
-    VIR_FREE (buf);
+    VIR_FREE(mdns_name);
+    VIR_FREE(unix_sock_ro_perms);
+    VIR_FREE(unix_sock_rw_perms);
+    VIR_FREE(unix_sock_group);
+    VIR_FREE(buf);
 
     /* Don't bother trying to free listen_addr, tcp_port, tls_port, key_file,
        cert_file, ca_file, or crl_file, since they are initialized to
@@ -2817,9 +2812,8 @@ remoteReadConfigFile (struct qemud_server *server, const char *filename)
     if (tls_allowed_dn_list) {
         int i;
         for (i = 0; tls_allowed_dn_list[i]; i++)
-            free (tls_allowed_dn_list[i]);
-        free (tls_allowed_dn_list);
-        tls_allowed_dn_list = NULL;
+            VIR_FREE(tls_allowed_dn_list[i]);
+        VIR_FREE(tls_allowed_dn_list);
     }
 
     return -1;
index 94b7238e76d6785584b759cf34b6418130e88172..af6341118578fb83842a97673538d9ff7d0c27b1 100644 (file)
      ...
 
      virBufferAddLit(&amp;buf, "&lt;domain&gt;\n");
-     virBufferVSprint(&amp;buf, "  &lt;memory>%d&lt;/memory&gt;\n", memory);
+     virBufferVSprint(&amp;buf, "  &lt;memory&gt;%d&lt;/memory&gt;\n", memory);
      ...
      virBufferAddLit(&amp;buf, "&lt;/domain&gt;\n");
 
-     ....
+     ...
 
      if (virBufferError(&amp;buf)) {
-         __virRaiseError(...);
+         virBufferFreeAndReset(&amp;buf);
+         virReportOOMError(...);
          return NULL;
      }
 
index 6ebddf5f2a7dd891682796a037b59dc8f67df5d4..476bba6e3a17782a66c80a9a8f89ae31fafe33ad 100644 (file)
@@ -769,8 +769,10 @@ virCapabilitiesFormatXML(virCapsPtr caps)
 
     virBufferAddLit(&xml, "</capabilities>\n");
 
-    if (virBufferError(&xml))
+    if (virBufferError(&xml)) {
+        virBufferFreeAndReset(&xml);
         return NULL;
+    }
 
     return virBufferContentAndReset(&xml);
 }
index dca2e499641de10ed7b42194f30266277842a8f4..5e94edf1ecf987f6a0bcec19e8c8fb08115cd5b1 100644 (file)
@@ -3723,6 +3723,7 @@ virDomainCpuSetFormat(virConnectPtr conn, char *cpuset, int maxcpu)
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         virReportOOMError(conn);
         return NULL;
     }
@@ -4531,7 +4532,7 @@ char *virDomainDefFormat(virConnectPtr conn,
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     unsigned char *uuid;
     char uuidstr[VIR_UUID_STRING_BUFLEN];
-    const char *type = NULL, *tmp;
+    const char *type = NULL;
     int n, allones = 1;
 
     if (!(type = virDomainVirtTypeToString(def->virtType))) {
@@ -4787,8 +4788,7 @@ char *virDomainDefFormat(virConnectPtr conn,
  no_memory:
     virReportOOMError(conn);
  cleanup:
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
@@ -4797,7 +4797,7 @@ char *virDomainObjFormat(virConnectPtr conn,
                          virDomainObjPtr obj,
                          int flags)
 {
-    char *config_xml = NULL, *xml = NULL;
+    char *config_xml = NULL;
     virBuffer buf = VIR_BUFFER_INITIALIZER;
 
     virBufferVSprintf(&buf, "<domstatus state='%s' pid='%d'>\n",
@@ -4825,8 +4825,7 @@ char *virDomainObjFormat(virConnectPtr conn,
 no_memory:
     virReportOOMError(conn);
 error:
-    xml = virBufferContentAndReset(&buf);
-    VIR_FREE(xml);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 31abf128905fd7431bbc4989f7c8d1e1d2e78d54..3c99027cfcc5a5a05928887aab5a6ffb25e13bba 100644 (file)
@@ -1208,7 +1208,7 @@ char *virInterfaceDefFormat(virConnectPtr conn,
                           const virInterfaceDefPtr def)
 {
     virBuffer buf = VIR_BUFFER_INITIALIZER;
-    const char *type = NULL, *tmp;
+    const char *type = NULL;
 
     if ((def == NULL) ||
         ((def->name == NULL) && (def->type != VIR_INTERFACE_TYPE_VLAN))) {
@@ -1271,8 +1271,7 @@ char *virInterfaceDefFormat(virConnectPtr conn,
 no_memory:
     virReportOOMError(conn);
 cleanup:
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 62b3007c25be6ec473bb0477114811456a6272a4..ab76f21dd71ca61882cc438f91249dce411bd7e2 100644 (file)
@@ -642,7 +642,6 @@ char *virNetworkDefFormat(virConnectPtr conn,
 {
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     unsigned char *uuid;
-    char *tmp;
     char uuidstr[VIR_UUID_STRING_BUFLEN];
 
     virBufferAddLit(&buf, "<network>\n");
@@ -731,8 +730,7 @@ char *virNetworkDefFormat(virConnectPtr conn,
 
  no_memory:
     virReportOOMError(conn);
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 6003ab15ca304430186553b02d99acb68b1df220..4bf71da700eb8558d943e96386045a82f8e2d60e 100644 (file)
@@ -246,7 +246,6 @@ char *virNodeDeviceDefFormat(virConnectPtr conn,
 {
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     virNodeDevCapsDefPtr caps;
-    char *tmp;
 
     virBufferAddLit(&buf, "<device>\n");
     virBufferEscapeString(&buf, "  <name>%s</name>\n", def->name);
@@ -464,8 +463,7 @@ char *virNodeDeviceDefFormat(virConnectPtr conn,
 
  no_memory:
     virReportOOMError(conn);
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 21215b29b789a0885c0b1676b35a5b6a92e6fd1a..538fa91052ffef80c146ec18da2d29414b3aa040 100644 (file)
@@ -303,7 +303,6 @@ virSecretDefFormat(virConnectPtr conn, const virSecretDefPtr def)
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     unsigned char *uuid;
     char uuidstr[VIR_UUID_STRING_BUFLEN];
-    char *tmp;
 
     virBufferVSprintf(&buf, "<secret ephemeral='%s' private='%s'>\n",
                       def->ephemeral ? "yes" : "no",
@@ -328,7 +327,6 @@ virSecretDefFormat(virConnectPtr conn, const virSecretDefPtr def)
  no_memory:
     virReportOOMError(conn);
  error:
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
index 065cd048b58f1816ca405266b47c9f18ad4aff80..0aefa06f6e4e3553daa44d8423e0ff2f75eb355e 100644 (file)
@@ -954,7 +954,7 @@ virStoragePoolDefFormat(virConnectPtr conn,
  no_memory:
     virReportOOMError(conn);
  cleanup:
-    free(virBufferContentAndReset(&buf));
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
@@ -1292,7 +1292,6 @@ virStorageVolDefFormat(virConnectPtr conn,
                        virStorageVolDefPtr def) {
     virStorageVolOptionsPtr options;
     virBuffer buf = VIR_BUFFER_INITIALIZER;
-    char *tmp;
 
     options = virStorageVolOptionsForPoolType(pool->type);
     if (options == NULL)
@@ -1351,8 +1350,7 @@ virStorageVolDefFormat(virConnectPtr conn,
  no_memory:
     virReportOOMError(conn);
  cleanup:
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
@@ -1742,7 +1740,7 @@ char *virStoragePoolSourceListFormat(virConnectPtr conn,
  no_memory:
     virReportOOMError(conn);
  cleanup:
-    free(virBufferContentAndReset(&buf));
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 5737fe96601a0fe61549d126ab66b11ba04e1104..ea464a37e90490baf35a27763669a45552303d35 100644 (file)
@@ -2293,6 +2293,7 @@ esxDomainDumpXML(virDomainPtr domain, int flags)
     return xml;
 
   failure:
+    virBufferFreeAndReset(&buffer);
     VIR_FREE(xml);
 
     goto cleanup;
@@ -2723,6 +2724,8 @@ esxDomainDefineXML(virConnectPtr conn, const char *xml ATTRIBUTE_UNUSED)
     return domain;
 
   failure:
+    virBufferFreeAndReset(&buffer);
+
     domain = NULL;
 
     goto cleanup;
index 04860e20681a47c2bfdc5f0db549ee70d28c8335..5725b2fa61a2cb69a82f77a4210eeedd1e285695 100644 (file)
@@ -532,7 +532,7 @@ esxVI_Context_DownloadFile(virConnectPtr conn, esxVI_Context *ctx,
     return 0;
 
   failure:
-    free(virBufferContentAndReset(&buffer));
+    virBufferFreeAndReset(&buffer);
 
     return -1;
 }
@@ -708,7 +708,7 @@ esxVI_Context_Execute(virConnectPtr conn, esxVI_Context *ctx,
     return 0;
 
   failure:
-    free(virBufferContentAndReset(&buffer));
+    virBufferFreeAndReset(&buffer);
     esxVI_Response_Free(response);
     esxVI_Fault_Free(&fault);
 
@@ -2065,7 +2065,7 @@ esxVI_StartSimpleVirtualMachineTask
     return result;
 
   failure:
-    free(virBufferContentAndReset(&buffer));
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -2124,9 +2124,7 @@ esxVI_SimpleVirtualMachineMethod(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
index a80d1bf7a93496cdebd1d4cd263f5abde0855d06..06b5fd4e60c1cc9d8fcfca319ae8b1f0f54494f4 100644 (file)
@@ -158,9 +158,7 @@ esxVI_Login(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -214,9 +212,7 @@ esxVI_Logout(virConnectPtr conn, esxVI_Context *ctx)
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -283,9 +279,7 @@ esxVI_SessionIsActive(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -352,9 +346,7 @@ esxVI_RetrieveProperties(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -451,9 +443,7 @@ esxVI_MigrateVM_Task(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -509,9 +499,7 @@ esxVI_ReconfigVM_Task(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -579,9 +567,7 @@ esxVI_RegisterVM_Task(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -630,9 +616,7 @@ esxVI_UnregisterVM(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -702,9 +686,7 @@ esxVI_CreateFilter(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -758,9 +740,7 @@ esxVI_DestroyPropertyFilter(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -824,9 +804,7 @@ esxVI_WaitForUpdates(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -928,9 +906,7 @@ esxVI_ValidateMigration(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -1003,9 +979,7 @@ esxVI_FindByIp(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -1089,9 +1063,7 @@ esxVI_FindByUuid(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -1165,9 +1137,7 @@ esxVI_QueryAvailablePerfMetric(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -1232,9 +1202,7 @@ esxVI_QueryPerfCounter(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
@@ -1299,9 +1267,7 @@ esxVI_QueryPerf(virConnectPtr conn, esxVI_Context *ctx,
     return result;
 
   failure:
-    if (request == NULL) {
-        request = virBufferContentAndReset(&buffer);
-    }
+    virBufferFreeAndReset(&buffer);
 
     result = -1;
 
index a16751393b7ab96da70c999e60c10ab7ab6c7b1e..f5b45440f4b115e8ed2676111e8853a2c2b67459 100644 (file)
@@ -2124,7 +2124,6 @@ esxVMX_FormatConfig(virConnectPtr conn, esxVI_Context *ctx,
     int sched_cpu_affinity_length;
     unsigned char zero[VIR_UUID_BUFLEN];
     virBuffer buffer = VIR_BUFFER_INITIALIZER;
-    char *vmx = NULL;
 
     memset(zero, 0, VIR_UUID_BUFLEN);
 
@@ -2347,16 +2346,10 @@ esxVMX_FormatConfig(virConnectPtr conn, esxVI_Context *ctx,
         goto failure;
     }
 
-    vmx = virBufferContentAndReset(&buffer);
-
-    return vmx;
+    return virBufferContentAndReset(&buffer);
 
   failure:
-    if (vmx == NULL) {
-        vmx = virBufferContentAndReset(&buffer);
-    }
-
-    VIR_FREE(vmx);
+    virBufferFreeAndReset(&buffer);
 
     return NULL;
 }
index 72257d726372bd3f06a5104885808f44dd3444dd..58f99fb966204f98df19521512eafe5430a1dc88 100644 (file)
@@ -12,6 +12,7 @@ virBufferAddChar;
 virBufferContentAndReset;
 virBufferError;
 virBufferURIEncodeString;
+virBufferFreeAndReset;
 
 
 # caps.h
index c7238fc5f848a1c4362bd9ac9d0f770c63305560..cf23be11d5cb715bfc149dd4f6a3f39bde9f580e 100644 (file)
@@ -323,6 +323,7 @@ static int udevGenerateDeviceName(struct udev_device *device,
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         VIR_ERROR("Buffer error when generating device name for device "
                   "with sysname '%s'\n", udev_device_get_sysname(device));
         ret = -1;
index 39bb1ea69fb0a193f24642022def3da8aae27bb5..da806fc62a65818d177f31d7b5d1f2f40439b589 100644 (file)
@@ -26,6 +26,7 @@
 #include "one_client.h"
 #include "datatypes.h"
 #include "util.h"
+#include "memory.h"
 
 oneClient one_client;
 
@@ -54,12 +55,12 @@ int c_oneReturnCode(xmlrpc_value *resultP)
     if( return_code )
     {
         xmlrpc_DECREF(resultP);
-        free(return_string);
+        VIR_FREE(return_string);
         return 0;
     }
     else
     {
-        free(one_client.error);
+        VIR_FREE(one_client.error);
 
         one_client.error=return_string;
         return -1;
@@ -125,7 +126,7 @@ int c_oneAllocateTemplate(char* vm_template)
         xmlrpc_DECREF(valueP);
         xmlrpc_DECREF(resultP);
 
-        free(one_client.error);
+        VIR_FREE(one_client.error);
 
         one_client.error=return_string;
         return -1;
@@ -194,7 +195,7 @@ int c_oneVmInfo(int vmid, char* ret_info, int length)
     }
 
     xmlrpc_DECREF(resultP);
-    free(return_string);
+    VIR_FREE(return_string);
 
     return retval;
 }
index baef217c62ec7f0c1f7ed006c5df0cf95abfbfb7..2ed330b5f690349e0601483352b0d5bebb45fa4d 100644 (file)
@@ -278,7 +278,6 @@ char* xmlOneTemplate(virConnectPtr conn,virDomainDefPtr def)
 
 no_memory:
     virReportOOMError(conn);
-    char* tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 };
index 33c2fd39b4bdbc7dc3de79c67f8390b653952dac..7e9abbfdab35824244026accc4e48b488131faf0 100644 (file)
@@ -345,10 +345,12 @@ openvz_replace(const char* str,
         str_start = offset + from_len;
     }
 
-     virBufferAdd(&buf, str_start, strlen(str_start));
+    virBufferAdd(&buf, str_start, -1);
 
-    if(virBufferError(&buf))
-      return NULL;
+    if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
+        return NULL;
+    }
 
     return virBufferContentAndReset(&buf);
 }
index aac2eb8056291ff7d5e52dfe70b1b8e127e39ab4..1c0fccc4fb1a5845c23dd5f7b0a36ff1c992f3e2 100644 (file)
@@ -792,8 +792,7 @@ openvzDomainSetNetworkConfig(virConnectPtr conn,
     return 0;
 
 exit:
-    param = virBufferContentAndReset(&buf);
-    VIR_FREE(param);
+    virBufferFreeAndReset(&buf);
     return -1;
 }
 
index dfbc9680fd45c4d822b4191c04784249dbd51bfb..c4fcfedb7aa47dcee4ed789c786e59899ef74f9a 100644 (file)
@@ -486,13 +486,12 @@ phypExec(LIBSSH2_SESSION * session, char *cmd, int *exit_status,
 
   err:
     (*exit_status) = SSH_CMD_ERR;
-    char *cleanup_buf = virBufferContentAndReset(&tex_ret);
-
-    VIR_FREE(cleanup_buf);
+    virBufferFreeAndReset(&tex_ret);
     return NULL;
 
   exit:
     if (virBufferError(&tex_ret)) {
+        virBufferFreeAndReset(&tex_ret);
         virReportOOMError(conn);
         return NULL;
     }
index 7d41b5d0d9ce6a31ee020b0edf618434bb30b807..a25fac6d74f30bcbabd913bb2ea93c2a7cbcebfd 100644 (file)
@@ -1379,6 +1379,7 @@ qemuBuildHostNetStr(virConnectPtr conn,
                 type_sep = ','; /* dead-store, but leave it, in case... */
             }
             if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
                 virReportOOMError(conn);
                 return -1;
             }
@@ -1866,8 +1867,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
             virBufferAddLit(&buf, "control,");
 
         qemudBuildCommandLineChrDevStr(monitor_chr, &buf);
-        if (virBufferError(&buf))
-            goto error;
+        if (virBufferError(&buf)) {
+            virBufferFreeAndReset(&buf);
+            goto no_memory;
+        }
 
         ADD_ARG_LIT("-monitor");
         ADD_ARG(virBufferContentAndReset(&buf));
@@ -2054,8 +2057,8 @@ int qemudBuildCommandLine(virConnectPtr conn,
             }
 
             if (virBufferError(&opt)) {
-                virReportOOMError(conn);
-                goto error;
+                virBufferFreeAndReset(&opt);
+                goto no_memory;
             }
 
             optstr = virBufferContentAndReset(&opt);
@@ -2197,8 +2200,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
             virDomainChrDefPtr serial = def->serials[i];
 
             qemudBuildCommandLineChrDevStr(serial, &buf);
-            if (virBufferError(&buf))
-                goto error;
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
             ADD_ARG_LIT("-serial");
             ADD_ARG(virBufferContentAndReset(&buf));
@@ -2214,8 +2219,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
             virDomainChrDefPtr parallel = def->parallels[i];
 
             qemudBuildCommandLineChrDevStr(parallel, &buf);
-            if (virBufferError(&buf))
-                goto error;
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
             ADD_ARG_LIT("-parallel");
             ADD_ARG(virBufferContentAndReset(&buf));
@@ -2240,8 +2247,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
             }
 
             qemudBuildCommandLineChrDevChardevStr(channel, id, &buf);
-            if (virBufferError(&buf))
-                goto error;
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
             ADD_ARG_LIT("-chardev");
             ADD_ARG(virBufferContentAndReset(&buf));
@@ -2254,8 +2263,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
 
             VIR_FREE(addr);
 
-            if (virBufferError(&buf))
-                goto error;
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
             ADD_ARG_LIT("-net");
             ADD_ARG(virBufferContentAndReset(&buf));
@@ -2313,8 +2324,10 @@ int qemudBuildCommandLine(virConnectPtr conn,
             virBufferVSprintf(&opt, "%d",
                               def->graphics[0]->data.vnc.port - 5900);
         }
-        if (virBufferError(&opt))
+        if (virBufferError(&opt)) {
+            virBufferFreeAndReset(&opt);
             goto no_memory;
+        }
 
         optstr = virBufferContentAndReset(&opt);
 
index 7e60d0ebcd55dd1eb618cfe0ffd7eb1b711cd3c4..2fb059db4a34f273e1bac447dd5e4e23f2ff29c3 100644 (file)
@@ -4491,8 +4491,11 @@ static char *qemuDomainXMLToNative(virConnectPtr conn,
         tmp++;
     }
 
-    if (virBufferError(&buf))
+    if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
+        virReportOOMError(conn);
         goto cleanup;
+    }
 
     ret = virBufferContentAndReset(&buf);
 
index ecc0c17fc01110a2dd50f7c109443fc06648fa98..affeb0f82cc1c3f35e78577bda448a938f7d2b4e 100644 (file)
@@ -1424,10 +1424,10 @@ retry:
 
 
     /* Free hostname copy */
-    free (priv->hostname);
+    VIR_FREE(priv->hostname);
 
     /* See comment for remoteType. */
-    free (priv->type);
+    VIR_FREE(priv->type);
 
     /* Free callback list */
     virDomainEventCallbackListFree(priv->callbackList);
@@ -3411,7 +3411,7 @@ remoteDomainBlockPeek (virDomainPtr domain,
     rv = 0;
 
 cleanup:
-    free (ret.buffer.buffer_val);
+    VIR_FREE(ret.buffer.buffer_val);
 
 done:
     remoteDriverUnlock(priv);
@@ -3462,7 +3462,7 @@ remoteDomainMemoryPeek (virDomainPtr domain,
     rv = 0;
 
 cleanup:
-    free (ret.buffer.buffer_val);
+    VIR_FREE(ret.buffer.buffer_val);
 
 done:
     remoteDriverUnlock(priv);
index 255ba537b5ca21ac68fab0f2249f1d980cd7f9e3..000bc8a5201526b3bb5a5d6cba280c393f7f4c11 100644 (file)
@@ -77,8 +77,8 @@ mcsRemove(const char *mcs)
             else {
                 mcsList = ptr->next;
             }
-            free(ptr->mcs);
-            free(ptr);
+            VIR_FREE(ptr->mcs);
+            VIR_FREE(ptr);
             return 0;
         }
         prevptr = ptr;
@@ -293,7 +293,7 @@ SELinuxGetSecurityLabel(virConnectPtr conn,
     }
 
     strcpy(sec->label, (char *) ctx);
-    free(ctx);
+    VIR_FREE(ctx);
 
     sec->enforcing = security_getenforce();
     if (sec->enforcing == -1) {
index 62f0977f5d8fb105ed48788f804e96f0d5ed466c..35b29ada2865db95ffbd2d41665ad906dd1c1bd9 100644 (file)
@@ -64,10 +64,10 @@ vahDeinit(vahControl * ctl)
     VIR_FREE(ctl->def);
     if (ctl->caps)
         virCapabilitiesFree(ctl->caps);
-    free(ctl->files);
-    free(ctl->hvm);
-    free(ctl->arch);
-    free(ctl->newdisk);
+    VIR_FREE(ctl->files);
+    VIR_FREE(ctl->hvm);
+    VIR_FREE(ctl->arch);
+    VIR_FREE(ctl->newdisk);
 
     return 0;
 }
@@ -761,7 +761,7 @@ vah_add_file(virBufferPtr buf, const char *path, const char *perms)
     }
 
   clean:
-    free(tmp);
+    VIR_FREE(tmp);
 
     return rc;
 }
@@ -883,8 +883,9 @@ get_files(vahControl * ctl)
             goto clean;
 
     if (virBufferError(&buf)) {
-         vah_error(NULL, 0, "failed to allocate file buffer");
-         goto clean;
+        virBufferFreeAndReset(&buf);
+        vah_error(NULL, 0, "failed to allocate file buffer");
+        goto clean;
     }
 
     rc = 0;
@@ -1048,8 +1049,10 @@ main(int argc, char **argv)
         if (ctl->files)
             virBufferVSprintf(&buf, "%s", ctl->files);
 
-        if (virBufferError(&buf))
+        if (virBufferError(&buf)) {
+            virBufferFreeAndReset(&buf);
             vah_error(ctl, 1, "failed to allocate buffer");
+        }
 
         included_files = virBufferContentAndReset(&buf);
 
index bb926cdefb3a0015e50174b67f38ab771e0ad78b..a3b4d5aa970e1480f122dab9fa8f663828757486 100644 (file)
@@ -445,8 +445,7 @@ cleanup:
             conn->secretDriver->undefine(secret);
         virSecretFree(secret);
     }
-    xml = virBufferContentAndReset(&buf);
-    VIR_FREE(xml);
+    virBufferFreeAndReset(&buf);
     virSecretDefFree(def);
     VIR_FREE(enc_secret);
     return ret;
@@ -1317,8 +1316,7 @@ virStorageBackendRunProgNul(virConnectPtr conn,
                 goto cleanup;
             n_tok = 0;
             for (i = 0; i < n_columns; i++) {
-                free (v[i]);
-                v[i] = NULL;
+                VIR_FREE(v[i]);
             }
         }
     }
@@ -1331,8 +1329,8 @@ virStorageBackendRunProgNul(virConnectPtr conn,
 
  cleanup:
     for (i = 0; i < n_columns; i++)
-        free (v[i]);
-    free (v);
+        VIR_FREE(v[i]);
+    VIR_FREE(v);
 
     if (fp)
         fclose (fp);
index fadba57d26413ec1e4423eae7914679bf05e340a..e01d5ae4d57f80c9a7675ea7c765e78f3d68b435 100644 (file)
@@ -422,8 +422,7 @@ storageListDefinedPools(virConnectPtr conn,
  cleanup:
     storageDriverUnlock(driver);
     for (i = 0 ; i < got ; i++) {
-        free(names[i]);
-        names[i] = NULL;
+        VIR_FREE(names[i]);
     }
     memset(names, 0, nnames * sizeof(*names));
     return -1;
index 0ace58fb0d555a2b08519bab8aec5c36be17310b..895a94d539d1a12e63d353c3b53a2c8272c87954 100644 (file)
@@ -163,7 +163,6 @@ umlBuildCommandLineNet(virConnectPtr conn,
                        virDomainNetDefPtr def,
                        int idx)
 {
-    char *ret;
     virBuffer buf = VIR_BUFFER_INITIALIZER;
 
     /* General format:  ethNN=type,options */
@@ -265,8 +264,7 @@ umlBuildCommandLineNet(virConnectPtr conn,
     return virBufferContentAndReset(&buf);
 
 error:
-    ret = virBufferContentAndReset(&buf);
-    VIR_FREE(ret);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
index 9681635caa0ef54af8c2a6c7401c9dede1351744..e683928cd84b36ee8d74bc66b2876ca5282c1188 100644 (file)
@@ -166,6 +166,19 @@ virBufferContentAndReset(const virBufferPtr buf)
     return str;
 }
 
+/**
+ * virBufferFreeAndReset:
+ * @buf: the buffer to free and reset
+ *
+ * Frees the buffer content and resets the buffer structure.
+ */
+void virBufferFreeAndReset(const virBufferPtr buf)
+{
+    char *str = virBufferContentAndReset(buf);
+
+    VIR_FREE(str);
+}
+
 /**
  * virBufferError:
  * @buf: the buffer
index 94ee8a3d1029add3689d691f5fb18a600a9186a7..d9a17083ff221cb5ae842271c0f7aa4e48410c66 100644 (file)
@@ -35,6 +35,7 @@ struct _virBuffer {
 #endif
 
 char *virBufferContentAndReset(const virBufferPtr buf);
+void virBufferFreeAndReset(const virBufferPtr buf);
 int virBufferError(const virBufferPtr buf);
 unsigned int virBufferUse(const virBufferPtr buf);
 void virBufferAdd(const virBufferPtr buf, const char *str, int len);
index 8126f698b75401ff7f4701b45465d68f6726b18d..0c7e556db105ba00edb14784c9dfd45694bc8e9a 100644 (file)
@@ -927,15 +927,15 @@ virConfWriteFile(const char *filename, virConfPtr conf)
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         virReportOOMError(NULL);
         return -1;
     }
 
     fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR );
     if (fd < 0) {
-        char *tmp = virBufferContentAndReset(&buf);
+        virBufferFreeAndReset(&buf);
         virConfError(NULL, VIR_ERR_WRITE_FAILED, _("failed to open file"));
-        VIR_FREE(tmp);
         return -1;
     }
 
@@ -983,6 +983,7 @@ virConfWriteMem(char *memory, int *len, virConfPtr conf)
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         virReportOOMError(NULL);
         return -1;
     }
index 757f78ccee568abcfd69b8b829650c94db3ac3bf..6bd8469c8ddbcf21e5a6ce81de24d382f6352614 100644 (file)
@@ -867,8 +867,10 @@ char *virLogGetFilters(void) {
     }
     virLogUnlock();
 
-    if (virBufferError(&filterbuf))
+    if (virBufferError(&filterbuf)) {
+        virBufferFreeAndReset(&filterbuf);
         return NULL;
+    }
 
     return virBufferContentAndReset(&filterbuf);
 }
@@ -905,8 +907,10 @@ char *virLogGetOutputs(void) {
     }
     virLogUnlock();
 
-    if (virBufferError(&outputbuf))
+    if (virBufferError(&outputbuf)) {
+        virBufferFreeAndReset(&outputbuf);
         return NULL;
+    }
 
     return virBufferContentAndReset(&outputbuf);
 }
index d0a84b38e5c81ac88c7e01241677cb33d9b85b59..9b96c2ac30d1d21277386d8ff95550f0fd4f0fe8 100644 (file)
@@ -154,6 +154,7 @@ qparam_get_query (const struct qparam_set *ps)
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         virReportOOMError(NULL);
         return NULL;
     }
index 3a85c5284a2ed7cadba429e95946f4e90f25a43c..694838a81662130add690342bc6ac7e4ea8b6486 100644 (file)
@@ -936,7 +936,7 @@ saferead_lim (int fd, size_t max_len, size_t *length)
         }
     }
 
-    free (buf);
+    VIR_FREE(buf);
     errno = save_errno;
     return NULL;
 }
index 8b374ca66ba1f4a57cce6dc94bdf26e368e0514e..3ff02bad21cdfb34680d428a9ffdc14c8d4bc23f 100644 (file)
@@ -345,10 +345,10 @@ virResetError(virErrorPtr err)
 {
     if (err == NULL)
         return;
-    free(err->message);
-    free(err->str1);
-    free(err->str2);
-    free(err->str3);
+    VIR_FREE(err->message);
+    VIR_FREE(err->str1);
+    VIR_FREE(err->str2);
+    VIR_FREE(err->str3);
     memset(err, 0, sizeof(virError));
 }
 
index 73b94c161fb23f6e2bd49f3774a30dac36dfa7e5..fdcaff74bb163ea3b421855bf6b7fc9d5159a433 100644 (file)
@@ -156,12 +156,12 @@ check_bd_connected (xenUnifiedPrivatePtr priv, int device, int domid)
          * string instead of an error.  Assume it's not connected
          * in this case.
          */
-        free (rs);
+        VIR_FREE(rs);
         return 0;
     }
 
     r = STREQ (rs, "4");
-    free (rs);
+    VIR_FREE(rs);
     return r;
 }
 
index 76556d05071b46b49d6020fc20635c2703aa9fe0..241a102a9a0f1ea0955aae9e1c7f077829cf9875 100644 (file)
@@ -525,6 +525,7 @@ xend_op_ext(virConnectPtr xend, const char *path, char *error,
     }
 
     if (virBufferError(&buf)) {
+        virBufferFreeAndReset(&buf);
         virReportOOMError(NULL);
         return -1;
     }
@@ -5293,8 +5294,10 @@ xenDaemonFormatSxprChr(virConnectPtr conn,
         break;
     }
 
-    if (virBufferError(buf))
+    if (virBufferError(buf)) {
+        virReportOOMError(conn);
         return -1;
+    }
 
     return 0;
 }
@@ -5634,8 +5637,10 @@ xenDaemonFormatSxprSound(virConnectPtr conn,
         virBufferVSprintf(buf, "%s%s", i ? "," : "", str);
     }
 
-    if (virBufferError(buf))
+    if (virBufferError(buf)) {
+        virReportOOMError(conn);
         return -1;
+    }
 
     return 0;
 }
@@ -5910,14 +5915,13 @@ xenDaemonFormatSxpr(virConnectPtr conn,
 
     if (virBufferError(&buf)) {
         virReportOOMError(conn);
-        return NULL;
+        goto error;
     }
 
     return virBufferContentAndReset(&buf);
 
 error:
-    tmp = virBufferContentAndReset(&buf);
-    VIR_FREE(tmp);
+    virBufferFreeAndReset(&buf);
     return NULL;
 }
 
@@ -5964,7 +5968,7 @@ virDomainXMLDevID(virDomainPtr domain,
             return -1;
 
         tmp = virStrcpy(ref, xref, ref_len);
-        free(xref);
+        VIR_FREE(xref);
         if (tmp == NULL)
             return -1;
     } else if (dev->type == VIR_DOMAIN_DEVICE_NET) {
@@ -5984,7 +5988,7 @@ virDomainXMLDevID(virDomainPtr domain,
             return -1;
 
         tmp = virStrcpy(ref, xref, ref_len);
-        free(xref);
+        VIR_FREE(xref);
         if (tmp == NULL)
             return -1;
     } else if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV &&
index 6c60839e510a39731e90739b8cb2c2284b5447fe..3dc655bdda719ff0d589d406876c15577840f600 100644 (file)
@@ -1750,6 +1750,7 @@ int xenXMDomainPinVcpu(virDomainPtr domain,
             }
 
     if (virBufferError(&mapbuf)) {
+        virBufferFreeAndReset(&mapbuf);
         virReportOOMError(domain->conn);
         goto cleanup;
     }
@@ -1980,7 +1981,6 @@ static int xenXMDomainConfigFormatDisk(virConnectPtr conn,
 {
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     virConfValuePtr val, tmp;
-    char *str;
 
     if(disk->src) {
         if (disk->driverName) {
@@ -2021,7 +2021,7 @@ static int xenXMDomainConfigFormatDisk(virConnectPtr conn,
 
     if (virBufferError(&buf)) {
         virReportOOMError(conn);
-        return -1;
+        goto cleanup;
     }
 
     if (VIR_ALLOC(val) < 0) {
@@ -2042,8 +2042,7 @@ static int xenXMDomainConfigFormatDisk(virConnectPtr conn,
     return 0;
 
 cleanup:
-    str = virBufferContentAndReset(&buf);
-    VIR_FREE(str);
+    virBufferFreeAndReset(&buf);
     return -1;
 }
 
@@ -2054,7 +2053,6 @@ static int xenXMDomainConfigFormatNet(virConnectPtr conn,
 {
     virBuffer buf = VIR_BUFFER_INITIALIZER;
     virConfValuePtr val, tmp;
-    char *str;
     xenUnifiedPrivatePtr priv = (xenUnifiedPrivatePtr) conn->privateData;
 
     virBufferVSprintf(&buf, "mac=%02x:%02x:%02x:%02x:%02x:%02x",
@@ -2131,8 +2129,10 @@ static int xenXMDomainConfigFormatNet(virConnectPtr conn,
         virBufferVSprintf(&buf, ",vifname=%s",
                           net->ifname);
 
-    if (virBufferError(&buf))
+    if (virBufferError(&buf)) {
+        virReportOOMError(conn);
         goto cleanup;
+    }
 
     if (VIR_ALLOC(val) < 0) {
         virReportOOMError(conn);
@@ -2152,8 +2152,7 @@ static int xenXMDomainConfigFormatNet(virConnectPtr conn,
     return 0;
 
 cleanup:
-    str = virBufferContentAndReset(&buf);
-    VIR_FREE(str);
+    virBufferFreeAndReset(&buf);
     return -1;
 }
 
@@ -2482,8 +2481,10 @@ virConfPtr xenXMDomainConfigFormat(virConnectPtr conn,
                     virBufferVSprintf(&buf, ",keymap=%s",
                                       def->graphics[0]->data.vnc.keymap);
             }
-            if (virBufferError(&buf))
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
                 goto no_memory;
+            }
 
             vfbstr = virBufferContentAndReset(&buf);
 
index 0cca9b5807dc47d26b77131f91b7d4ab357714ab..10b1f8e614554cb3600d53c670a03d9e22c8838a 100644 (file)
@@ -434,7 +434,7 @@ xenStoreGetDomainInfo(virDomainPtr domain, virDomainInfoPtr info)
     if (tmp != NULL) {
         if (tmp[0] == '1')
             info->state = VIR_DOMAIN_RUNNING;
-        free(tmp);
+        VIR_FREE(tmp);
     } else {
         info->state = VIR_DOMAIN_NOSTATE;
     }
@@ -442,7 +442,7 @@ xenStoreGetDomainInfo(virDomainPtr domain, virDomainInfoPtr info)
     if (tmp != NULL) {
         info->memory = atol(tmp);
         info->maxMem = atol(tmp);
-        free(tmp);
+        VIR_FREE(tmp);
     } else {
         info->memory = 0;
         info->maxMem = 0;
@@ -452,7 +452,7 @@ xenStoreGetDomainInfo(virDomainPtr domain, virDomainInfoPtr info)
     tmp = virDomainDoStoreQuery(domain->conn, domain->id, "cpu_time");
     if (tmp != NULL) {
         info->cpuTime = atol(tmp);
-        free(tmp);
+        VIR_FREE(tmp);
     } else {
         info->cpuTime = 0;
     }
@@ -462,7 +462,7 @@ xenStoreGetDomainInfo(virDomainPtr domain, virDomainInfoPtr info)
     tmp2 = virConnectDoStoreList(domain->conn, request, &nb_vcpus);
     if (tmp2 != NULL) {
         info->nrVirtCpu = nb_vcpus;
-        free(tmp2);
+        VIR_FREE(tmp2);
     }
     return (0);
 }
@@ -698,7 +698,7 @@ xenStoreLookupByName(virConnectPtr conn, const char *name)
         tmp = xs_read(priv->xshandle, 0, prop, &len);
         if (tmp != NULL) {
             found = STREQ (name, tmp);
-            free(tmp);
+            VIR_FREE(tmp);
             if (found)
                 break;
         }
@@ -713,8 +713,8 @@ xenStoreLookupByName(virConnectPtr conn, const char *name)
     ret->id = id;
 
 done:
-        free(xenddomain);
-        free(idlist);
+    VIR_FREE(xenddomain);
+    VIR_FREE(idlist);
 
     return(ret);
 }
@@ -843,7 +843,7 @@ int             xenStoreDomainGetVNCPort(virConnectPtr conn, int domid) {
         ret = strtol(tmp, &end, 10);
         if (ret == 0 && end == tmp)
             ret = -1;
-        free(tmp);
+        VIR_FREE(tmp);
     }
     return(ret);
 }
@@ -903,7 +903,7 @@ xenStoreDomainGetOSTypeID(virConnectPtr conn, int id) {
     if (vm) {
         snprintf(query, 199, "%s/image/ostype", vm);
         str = xs_read(priv->xshandle, 0, &query[0], &len);
-        free(vm);
+        VIR_FREE(vm);
     }
     if (str == NULL)
         str = strdup("linux");
index 9faac350eba561ed41f4001910cdd936b143106d..94a99e960bf0aa547882fa69a66f5e793cdca6ec 100644 (file)
@@ -3800,7 +3800,7 @@ static int buildPoolXML(const vshCmd *cmd, char **retname, char **xml) {
     return TRUE;
 
 cleanup:
-    free(virBufferContentAndReset(&buf));
+    virBufferFreeAndReset(&buf);
     return FALSE;
 }
 
@@ -4663,7 +4663,7 @@ cmdVolCreateAs(vshControl *ctl, const vshCmd *cmd)
     }
 
  cleanup:
-    free(virBufferContentAndReset(&buf));
+    virBufferFreeAndReset(&buf);
     virStoragePoolFree(pool);
     return FALSE;
 }