From: Mike Frysinger Date: Thu, 16 Feb 2012 18:30:43 +0000 (+0000) Subject: gdb: sim: check return value of sim_create_inferior X-Git-Tag: cygwin-1_7_11-release~70 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ddd60447d562534f4bfe3f9bd89b9943204861c7;p=external%2Fbinutils.git 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 Signed-off-by: Mike Frysinger --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 66faf85..261b54e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2012-02-16 Mike Frysinger + + PR gdb/9734: + * remote-sim.c (gdbsim_create_inferior): Call error() when + sim_create_inferior() fails. + 2012-02-16 Josh Matthews * machoread.c: Initialize nbr_syms to avoid warnings-as-errors failure. diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c index 2a586e5..ee73cce 100644 --- a/gdb/remote-sim.c +++ b/gdb/remote-sim.c @@ -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));