
If using the 'virDomainCreateLinux' call to create a VM, a so called 'transient' domain will be created - ie one without any config file. There is special code in the qemudShutdownVMDaemon method to cleanup the resources associated with such domains, in particuarly free'ing the struct qemud_vm object. Unfortunately in the virDomainCreateLinux codepath this is a problem, because we still need the 'struct qemud_vm' object in certain edge cases, and so the caller has to free it. We currently have a double free() in that scenario. This patch removes the call to qemudFreeVMDaemon from qemudShutdownVMDaemon. Instead it is now always the caller's responsibility to cleanup after transient domains. qemu_driver.c | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) Dan. -- |=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=| |=- Perl modules: http://search.cpan.org/~danberr/ -=| |=- Projects: http://freshmeat.net/~danielpb/ -=| |=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|