diff options
author | Eric Blake <eblake@redhat.com> | 2011-07-04 10:30:43 +0800 |
---|---|---|
committer | Daniel Veillard <veillard@redhat.com> | 2011-07-04 10:30:43 +0800 |
commit | 74d224fac35ff12761307fb0f1e527ead7b6fd0d (patch) | |
tree | 4b03e1f1d3486a076612e31cf7e4714c342c290a | |
parent | cgroup: silence coverity warning (diff) | |
download | libvirt-74d224fac35ff12761307fb0f1e527ead7b6fd0d.tar.gz libvirt-74d224fac35ff12761307fb0f1e527ead7b6fd0d.tar.bz2 libvirt-74d224fac35ff12761307fb0f1e527ead7b6fd0d.zip |
qemu: avoid null deref on low memory
Detected by Coverity. qemuDomainEventQueue requires a non-NULL
pointer; most callers silently drop the event if we encountered
and OOM situation trying to create the event.
* src/qemu/qemu_migration.c (qemuMigrationFinish): Check for OOM.
-rw-r--r-- | src/qemu/qemu_migration.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 800b714c0..d7b27a0a1 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -2552,7 +2552,8 @@ qemuMigrationFinish(struct qemud_driver *driver, VIR_DOMAIN_EVENT_RESUMED_MIGRATED); if (virDomainObjGetState(vm, NULL) == VIR_DOMAIN_PAUSED) { virDomainObjSetState(vm, VIR_DOMAIN_PAUSED, VIR_DOMAIN_PAUSED_USER); - qemuDomainEventQueue(driver, event); + if (event) + qemuDomainEventQueue(driver, event); event = virDomainEventNewFromObj(vm, VIR_DOMAIN_EVENT_SUSPENDED, VIR_DOMAIN_EVENT_SUSPENDED_PAUSED); |