From 92c076c042e0b2c8acd77fcd690eae2235045a58 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 12 Feb 2018 15:37:43 -0500 Subject: [PATCH] target-i386: Simplify error handling on cpu_x86_init_user() Isolate error handling path from the "if (error)" checks. Backports commit 18b0e4e77142ace948497a053bd5b56c1b849592 from qemu --- qemu/target-i386/cpu.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/qemu/target-i386/cpu.c b/qemu/target-i386/cpu.c index 79db26e5..edd59d29 100644 --- a/qemu/target-i386/cpu.c +++ b/qemu/target-i386/cpu.c @@ -1812,20 +1812,18 @@ CPUX86State *cpu_x86_init_user(struct uc_struct *uc, const char *cpu_model) cpu = cpu_x86_create(uc, cpu_model, &error); if (error) { - goto out; + goto error; } object_property_set_bool(uc, OBJECT(cpu), true, "realized", &error); - -out: - if (error) { - error_free(error); - if (cpu != NULL) { - object_unref(uc, OBJECT(cpu)); - } - return NULL; - } return &cpu->env; + +error: + error_free(error); + if (cpu != NULL) { + object_unref(uc, OBJECT(cpu)); + } + return NULL; } static void x86_cpu_cpudef_class_init(struct uc_struct *uc, ObjectClass *oc, void *data)