diff options
author | Eduardo Habkost <ehabkost@redhat.com> | 2014-12-19 14:51:00 -0200 |
---|---|---|
committer | Eduardo Habkost <ehabkost@redhat.com> | 2015-02-25 15:00:07 -0300 |
commit | 18b0e4e77142ace948497a053bd5b56c1b849592 (patch) | |
tree | 30e2fcb1201025ba60fb001d0d2f14b67cc2336d /target-i386/cpu.c | |
parent | 15258d46baef5f8265ad5f1002905664cf58f051 (diff) |
target-i386: Simplify error handling on cpu_x86_init_user()
Isolate error handling path from the "if (error)" checks.
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'target-i386/cpu.c')
-rw-r--r-- | target-i386/cpu.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/target-i386/cpu.c b/target-i386/cpu.c index aee4d3e7ce..f6a7671f0d 100644 --- a/target-i386/cpu.c +++ b/target-i386/cpu.c @@ -2142,21 +2142,23 @@ CPUX86State *cpu_x86_init_user(const char *cpu_model) cpu = cpu_x86_create(cpu_model, NULL, &error); if (error) { - goto out; + goto error; } object_property_set_bool(OBJECT(cpu), true, "realized", &error); - -out: if (error) { - error_report("%s", error_get_pretty(error)); - error_free(error); - if (cpu != NULL) { - object_unref(OBJECT(cpu)); - } - return NULL; + goto error; } + return &cpu->env; + +error: + error_report("%s", error_get_pretty(error)); + error_free(error); + if (cpu != NULL) { + object_unref(OBJECT(cpu)); + } + return NULL; } static void x86_cpu_cpudef_class_init(ObjectClass *oc, void *data) |