diff options
author | Jim Meyering <meyering@redhat.com> | 2010-04-27 22:35:32 +0200 |
---|---|---|
committer | Jim Meyering <meyering@redhat.com> | 2010-04-29 11:16:04 +0200 |
commit | ba1072f0aca34dc3158d45f988bfd8a44dfa1f54 (patch) | |
tree | 125013963ae85997e1de2ad1c1b88914644df944 | |
parent | qemudDomainCreate: correct a slightly misdirected goto (diff) | |
download | libvirt-ba1072f0aca34dc3158d45f988bfd8a44dfa1f54.tar.gz libvirt-ba1072f0aca34dc3158d45f988bfd8a44dfa1f54.tar.bz2 libvirt-ba1072f0aca34dc3158d45f988bfd8a44dfa1f54.zip |
qemuDomainSnapshotCreateXML: avoid NULL dereferences
* src/qemu/qemu_driver.c (qemuDomainSnapshotCreateXML): When setting
"vm" to NULL, jump over vm-dereferencing code to "cleanup".
(qemuDomainRevertToSnapshot): Likewise.
-rw-r--r-- | src/qemu/qemu_driver.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index cbd6b67c5..dbc6e2d4b 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -10875,8 +10875,10 @@ static virDomainSnapshotPtr qemuDomainSnapshotCreateXML(virDomainPtr domain, qemuDomainObjEnterMonitorWithDriver(driver, vm); ret = qemuMonitorCreateSnapshot(priv->mon, def->name); qemuDomainObjExitMonitorWithDriver(driver, vm); - if (qemuDomainObjEndJob(vm) == 0) + if (qemuDomainObjEndJob(vm) == 0) { vm = NULL; + goto cleanup; + } if (ret < 0) goto cleanup; } @@ -11205,6 +11207,7 @@ static int qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot, if (qemuDomainObjEndJob(vm) > 0) virDomainRemoveInactive(&driver->domains, vm); vm = NULL; + goto cleanup; } } |