[libvirt] [PATCH] qemu: fix a const-correctness issue

Eric Blake eblake at redhat.com
Wed Nov 23 14:29:39 UTC 2011


Generally, functions which return malloc'd strings should be typed
as 'char *', not 'const char *', to make it obvious that the caller
is responsible to free things.  free(const char *) fails to compile,
and although we have a cast embedded in VIR_FREE to work around poor
code that frees const char *, it's better to not rely on that hack.

* src/qemu/qemu_driver.c (qemuDiskPathToAlias): Change return type.
(qemuDomainBlockJobImpl): Update callers.
---

Pushing under the trivial rule.

 src/qemu/qemu_driver.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 98ce695..94fbe94 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -10565,8 +10565,9 @@ cleanup:
     return ret;
 }

-static const char *
-qemuDiskPathToAlias(virDomainObjPtr vm, const char *path) {
+static char *
+qemuDiskPathToAlias(virDomainObjPtr vm, const char *path)
+{
     int i;
     char *ret = NULL;
     virDomainDiskDefPtr disk;
@@ -10605,7 +10606,7 @@ qemuDomainBlockJobImpl(virDomainPtr dom, const char *path,
     virDomainObjPtr vm = NULL;
     qemuDomainObjPrivatePtr priv;
     char uuidstr[VIR_UUID_STRING_BUFLEN];
-    const char *device = NULL;
+    char *device = NULL;
     int ret = -1;

     qemuDriverLock(driver);
-- 
1.7.7.3




More information about the libvir-list mailing list