From: Michal Privoznik Date: Fri, 16 Sep 2016 14:40:22 +0000 (+0200) Subject: qemuDomainDeviceDefPostParse: Fetch caps from domain object X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=1e501043f7c2e4838ea8edb896d1484d80c5c3f6;p=libvirt.git qemuDomainDeviceDefPostParse: Fetch caps from domain object Just like we did two commits ago, don't try to fetch capabilities for non-existing binary. Re-use the ones we have for running domain. Signed-off-by: Michal Privoznik --- diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index e46bad24cc..70fac56d4f 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -2562,15 +2562,19 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev, virCapsPtr caps, unsigned int parseFlags, void *opaque, - void *parseOpaque ATTRIBUTE_UNUSED) + void *parseOpaque) { virQEMUDriverPtr driver = opaque; - virQEMUCapsPtr qemuCaps = NULL; + virQEMUCapsPtr qemuCaps = parseOpaque; virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver); int ret = -1; - qemuCaps = virQEMUCapsCacheLookup(caps, driver->qemuCapsCache, - def->emulator); + if (qemuCaps) { + virObjectRef(qemuCaps); + } else { + qemuCaps = virQEMUCapsCacheLookup(caps, driver->qemuCapsCache, + def->emulator); + } if (dev->type == VIR_DOMAIN_DEVICE_NET && dev->data.net->type != VIR_DOMAIN_NET_TYPE_HOSTDEV &&