From: Ján Tomko Date: Mon, 23 Jun 2014 06:31:53 +0000 (+0200) Subject: Properly check the return value of CCWAddressAsString X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ecb96bcb418bb2c3d6287efbab2de298325ed31c;p=thirdparty%2Flibvirt.git Properly check the return value of CCWAddressAsString It returns NULL on failure. Checking if the negation of it is less than zero makes no sense. (Found by coverity after moving the code) In another case, the return value wasn't checked at all. (cherry picked from commit 3fe9d75ab641f5b676845980a0ee7aef8148da9b) Conflicts: src/conf/domain_addr.c - no code movement from commit b2626755 --- diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 9a314bf8d5..eb05d9482c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -1130,7 +1130,7 @@ int qemuDomainCCWAddressAssign(virDomainDeviceInfoPtr dev, goto cleanup; } } else if (autoassign && !dev->addr.ccw.assigned) { - if (!(addr = qemuCCWAddressAsString(&addrs->next)) < 0) + if (!(addr = qemuCCWAddressAsString(&addrs->next))) goto cleanup; while (virHashLookup(addrs->defined, addr)) { @@ -1140,7 +1140,8 @@ int qemuDomainCCWAddressAssign(virDomainDeviceInfoPtr dev, goto cleanup; } VIR_FREE(addr); - addr = qemuCCWAddressAsString(&addrs->next); + if (!(addr = qemuCCWAddressAsString(&addrs->next))) + goto cleanup; } dev->addr.ccw = addrs->next; dev->addr.ccw.assigned = true;