]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: avoid null deref on low memory
authorEric Blake <eblake@redhat.com>
Mon, 4 Jul 2011 02:30:43 +0000 (10:30 +0800)
committerDaniel Veillard <veillard@redhat.com>
Mon, 4 Jul 2011 02:30:43 +0000 (10:30 +0800)
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.

src/qemu/qemu_migration.c

index 800b714c0436c3c6ec25993821574e4d818bd85e..d7b27a0a1b77c0f3641d182edf90aabf9c7082d3 100644 (file)
@@ -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);