diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/infrun.c | 14 |
2 files changed, 13 insertions, 7 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index baf9a11..26f749c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2013-10-28 Pedro Alves <palves@redhat.com> + * infrun.c (handle_inferior_event): Move process_event_stop_test + goto label to the else branch of the ecs->random_signal check, + along with FRAME and GDBARCH re-fetching. + +2013-10-28 Pedro Alves <palves@redhat.com> + * infrun.c (switch_back_to_stepped_thread): New function, factored out from handle_inferior_event. (handle_inferior_event): Adjust to call diff --git a/gdb/infrun.c b/gdb/infrun.c index 0da90ec..4f22456 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -4288,13 +4288,6 @@ Cannot fill $_exitsignal with the correct signal number.\n")); ecs->event_thread->suspend.stop_signal = GDB_SIGNAL_TRAP; } -process_event_stop_test: - - /* Re-fetch current thread's frame in case we did a - "goto process_event_stop_test" above. */ - frame = get_current_frame (); - gdbarch = get_frame_arch (frame); - /* For the program's own signals, act according to the signal handling tables. */ @@ -4417,6 +4410,13 @@ process_event_stop_test: CORE_ADDR jmp_buf_pc; struct bpstat_what what; +process_event_stop_test: + + /* Re-fetch current thread's frame in case we did a + "goto process_event_stop_test" above. */ + frame = get_current_frame (); + gdbarch = get_frame_arch (frame); + what = bpstat_what (ecs->event_thread->control.stop_bpstat); if (what.call_dummy) |