From c611c886f5bfa75f306cd08122ba768ca589b4df Mon Sep 17 00:00:00 2001 From: Jiri Denemark Date: Thu, 4 Aug 2016 16:48:40 +0200 Subject: [PATCH] qemu: Copy missing QEMU caps elements Signed-off-by: Jiri Denemark --- src/qemu/qemu_capabilities.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 3361a40fe2..6c80d59613 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -354,6 +354,8 @@ struct virQEMUCapsMachineType { * correctly. It does not have to be ABI-stable, as * the cache will be discarded & repopulated if the * timestamp on the libvirtd binary changes. + * + * And don't forget to update virQEMUCapsNewCopy. */ struct _virQEMUCaps { virObject object; @@ -2016,6 +2018,11 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qemuCaps) ret->usedQMP = qemuCaps->usedQMP; + if (VIR_STRDUP(ret->binary, qemuCaps->binary) < 0) + goto error; + + ret->ctime = qemuCaps->ctime; + virBitmapCopy(ret->flags, qemuCaps->flags); ret->version = qemuCaps->version; @@ -2044,6 +2051,12 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qemuCaps) ret->machineTypes[i].maxCpus = qemuCaps->machineTypes[i].maxCpus; } + if (VIR_ALLOC_N(ret->gicCapabilities, qemuCaps->ngicCapabilities) < 0) + goto error; + ret->ngicCapabilities = qemuCaps->ngicCapabilities; + for (i = 0; i < qemuCaps->ngicCapabilities; i++) + ret->gicCapabilities[i] = qemuCaps->gicCapabilities[i]; + return ret; error: -- 2.39.5