aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux-user/main.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/linux-user/main.c b/linux-user/main.c
index d92702a734..111c1ffafc 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -3453,10 +3453,17 @@ CPUArchState *cpu_copy(CPUArchState *env)
{
CPUState *cpu = ENV_GET_CPU(env);
CPUArchState *new_env = cpu_init(cpu_model);
- CPUState *new_cpu = ENV_GET_CPU(new_env);
+ CPUState *new_cpu;
CPUBreakpoint *bp;
CPUWatchpoint *wp;
+ if (!new_env) {
+ fprintf(stderr, "cpu_copy: Failed to create new CPU\n");
+ exit(1);
+ }
+
+ new_cpu = ENV_GET_CPU(new_env);
+
/* Reset non arch specific state */
cpu_reset(new_cpu);