From: Pavel Mores Date: Fri, 6 Dec 2019 09:11:28 +0000 (+0100) Subject: qemu: use g_autofree instead of VIR_FREE in qemuMonitorTextCreateSnapshot() X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=b036505279b9199dac6bf9d2607ac9e7e941e420;p=libvirt.git qemu: use g_autofree instead of VIR_FREE in qemuMonitorTextCreateSnapshot() While at bugfixing, convert the whole function to the new-style memory allocation handling. Reviewed-by: Cole Robinson Signed-off-by: Pavel Mores --- diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c index 70ecd2281b..9135a11f0a 100644 --- a/src/qemu/qemu_monitor_text.c +++ b/src/qemu/qemu_monitor_text.c @@ -132,14 +132,13 @@ int qemuMonitorTextCreateSnapshot(qemuMonitorPtr mon, const char *name) { - char *cmd = NULL; - char *reply = NULL; - int ret = -1; + g_autofree char *cmd = NULL; + g_autofree char *reply = NULL; cmd = g_strdup_printf("savevm \"%s\"", name); if (qemuMonitorJSONHumanCommand(mon, cmd, &reply)) - goto cleanup; + return -1; if (strstr(reply, "Error while creating snapshot") || strstr(reply, "Could not open VM state file") || @@ -148,19 +147,14 @@ qemuMonitorTextCreateSnapshot(qemuMonitorPtr mon, (strstr(reply, "Error") && strstr(reply, "while writing VM"))) { virReportError(VIR_ERR_OPERATION_FAILED, _("Failed to take snapshot: %s"), reply); - goto cleanup; + return -1; } else if (strstr(reply, "No block device can accept snapshots")) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("this domain does not have a device to take snapshots")); - goto cleanup; + return -1; } - ret = 0; - - cleanup: - VIR_FREE(cmd); - VIR_FREE(reply); - return ret; + return 0; } int qemuMonitorTextLoadSnapshot(qemuMonitorPtr mon, const char *name)