mirror of https://gitee.com/openkylin/libvirt.git
lxc: Fix possible leaked @vm in lxcDomainCreateXMLWithFiles
In error paths, if we call virDomainObjListRemove we will leak the @vm because we have called with a reffed and locked @vm. So rather than set it to NULL, relock the @vm and allow the virDomainObjEndAPI to perform the magic of Unlock/Unref. Signed-off-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
parent
f52d0d42c9
commit
abd1e54f4c
|
@ -1245,7 +1245,7 @@ lxcDomainCreateXMLWithFiles(virConnectPtr conn,
|
|||
if (virLXCDomainObjBeginJob(driver, vm, LXC_JOB_MODIFY) < 0) {
|
||||
if (!vm->persistent) {
|
||||
virDomainObjListRemove(driver->domains, vm);
|
||||
vm = NULL;
|
||||
virObjectLock(vm);
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
@ -1258,7 +1258,7 @@ lxcDomainCreateXMLWithFiles(virConnectPtr conn,
|
|||
virLXCDomainObjEndJob(driver, vm);
|
||||
if (!vm->persistent) {
|
||||
virDomainObjListRemove(driver->domains, vm);
|
||||
vm = NULL;
|
||||
virObjectLock(vm);
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue