From: Mark McLoughlin Date: Thu, 9 Jul 2009 15:02:19 +0000 (+0100) Subject: Don't leak vm->monitorpath on re-connect X-Git-Tag: v0.7.0~213 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8a52daa2d44d7a6e12c4ed7c752d94551d343cfe;p=thirdparty%2Flibvirt.git Don't leak vm->monitorpath on re-connect * src/qemu_driver.c: vm->monitorpath is already initialized in the case of re-connect, so move the initialization for the normal startup case out of the common code --- diff --git a/src/qemu_driver.c b/src/qemu_driver.c index 95ea88255e..636ee9dfcb 100644 --- a/src/qemu_driver.c +++ b/src/qemu_driver.c @@ -862,11 +862,6 @@ static int qemudOpenMonitor(virConnectPtr conn, if (ret != 0) goto error; - if (!(vm->monitorpath = strdup(monitor))) { - virReportOOMError(conn); - goto error; - } - if ((vm->monitorWatch = virEventAddHandle(vm->monitor, 0, qemudDispatchVMEvent, driver, NULL)) < 0) @@ -967,7 +962,12 @@ qemudFindCharDevicePTYs(virConnectPtr conn, } /* Got them all, so now open the monitor console */ - ret = qemudOpenMonitor(conn, driver, vm, monitor, 0); + if ((ret = qemudOpenMonitor(conn, driver, vm, monitor, 0)) != 0) + goto cleanup; + + vm->monitorpath = monitor; + + return 0; cleanup: VIR_FREE(monitor);