aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target-i386/cpu.c20
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)