From: Jiri Denemark Date: Thu, 9 Feb 2017 08:25:51 +0000 (+0100) Subject: cpu_x86: Fix memory leak in virCPUx86Translate X-Git-Tag: CVE-2017-2635~156 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b97839b835620c689f1828e51d159ac63d94a716;p=thirdparty%2Flibvirt.git cpu_x86: Fix memory leak in virCPUx86Translate virCPUDefStealModel is called with keepVendor == true which means the cpu structure will keep its original vendor/vendor_id values. Thus it makes no sense to copy them to the translated definition as they won't be used there anyway. Except that the translated->vendor pointer might get lost in x86Decode. Signed-off-by: Jiri Denemark --- diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index 23a519ec00..9e22f896e9 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -2709,10 +2709,6 @@ virCPUx86Translate(virCPUDefPtr cpu, if (!(translated = virCPUDefCopyWithoutModel(cpu))) goto cleanup; - if (VIR_STRDUP(translated->vendor, cpu->vendor) < 0 || - VIR_STRDUP(translated->vendor_id, cpu->vendor_id) < 0) - goto cleanup; - if (x86Decode(translated, &model->data, models, nmodels, NULL, 0) < 0) goto cleanup;