From: Jiri Denemark Date: Thu, 4 Aug 2016 22:01:42 +0000 (+0200) Subject: cpu: Set nfeatures_max correctly in x86Decode X-Git-Tag: v2.3.0-rc1~49 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0b119e2b19f6dd335eda0158a89348cb91b0c203;p=thirdparty%2Flibvirt.git cpu: Set nfeatures_max correctly in x86Decode Keeping nfeatures_max set to 0 while nfeatures > 0 and some features are already stored in features array is just asking for problems once we want to add a new feature into the array. Signed-off-by: Jiri Denemark --- diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index bd2670374c..f424f7205f 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -1871,10 +1871,12 @@ x86Decode(virCPUDefPtr cpu, if (vendor && VIR_STRDUP(cpu->vendor, vendor->name) < 0) goto cleanup; - cpu->model = cpuModel->model; + VIR_STEAL_PTR(cpu->model, cpuModel->model); + VIR_STEAL_PTR(cpu->features, cpuModel->features); cpu->nfeatures = cpuModel->nfeatures; - cpu->features = cpuModel->features; - VIR_FREE(cpuModel); + cpuModel->nfeatures = 0; + cpu->nfeatures_max = cpuModel->nfeatures_max; + cpuModel->nfeatures_max = 0; ret = 0;