gdb: sim: check return value of sim_create_inferior

The current gdbsim_create_inferior func doesn't check the return value
of sim_create_inferior which can be problematic when that func doesn't
return success.  So, if it fails, call error() and be done.

Reported-by: Richard Stuckey <richard.stuckey@arc.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Mike Frysinger 2012-02-16 18:30:43 +00:00
parent b0d32fb61e
commit ddd60447d5
2 changed files with 10 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2012-02-16 Mike Frysinger <vapier@gentoo.org>
PR gdb/9734:
* remote-sim.c (gdbsim_create_inferior): Call error() when
sim_create_inferior() fails.
2012-02-16 Josh Matthews <josh@joshmatthews.net>
* machoread.c: Initialize nbr_syms to avoid warnings-as-errors failure.

View File

@ -641,7 +641,10 @@ gdbsim_create_inferior (struct target_ops *target, char *exec_file, char *args,
}
else
argv = NULL;
sim_create_inferior (sim_data->gdbsim_desc, exec_bfd, argv, env);
if (sim_create_inferior (sim_data->gdbsim_desc, exec_bfd, argv, env)
!= SIM_RC_OK)
error (_("Unable to create sim inferior."));
inferior_ptid = sim_data->remote_sim_ptid;
inferior_appeared (current_inferior (), ptid_get_pid (inferior_ptid));