From: Michal Privoznik Date: Thu, 23 Feb 2017 16:10:55 +0000 (+0100) Subject: qemuProcessInit: Jump onto correct label in case of error X-Git-Tag: v3.1.0-rc1~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9f26de128572cbfbc73dab5b984f52ac6d43a1b4;p=thirdparty%2Flibvirt.git qemuProcessInit: Jump onto correct label in case of error After eca76884ea in case of error in qemuDomainSetPrivatePaths() in pretended start we jump to stop. I've changed this during review from 'cleanup' which turned out to be correct. Well, sort of. We can't call qemuProcessStop() as it decrements driver->nactive and we did not increment it. However, it calls virDomainObjRemoveTransientDef() which is basically the only function we need to call. So call that function and goto cleanup; Signed-off-by: Michal Privoznik --- diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 8b8b9d9cc0..96edd9171c 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4757,8 +4757,10 @@ qemuProcessInit(virQEMUDriverPtr driver, goto cleanup; if (flags & VIR_QEMU_PROCESS_START_PRETEND) { - if (qemuDomainSetPrivatePaths(driver, vm) < 0) - goto stop; + if (qemuDomainSetPrivatePaths(driver, vm) < 0) { + virDomainObjRemoveTransientDef(vm); + goto cleanup; + } } else { vm->def->id = qemuDriverAllocateID(driver); qemuDomainSetFakeReboot(driver, vm, false);