* infrun.c (handle_signal_stop): Replace test for

TARGET_WAITKIND_STOPPED with an assert.
This commit is contained in:
Doug Evans 2014-03-02 16:51:35 -05:00
parent 35e6a7111e
commit f0407826d9
2 changed files with 17 additions and 14 deletions

View File

@ -1,3 +1,8 @@
2014-03-02 Doug Evans <xdje42@gmail.com>
* infrun.c (handle_signal_stop): Replace test for
TARGET_WAITKIND_STOPPED with an assert.
2014-03-02 Doug Evans <xdje42@gmail.com>
* guile/scm-objfile.c (ofscm_mark_objfile_smob): Fix typo in comment.

View File

@ -3781,22 +3781,20 @@ handle_signal_stop (struct execution_control_state *ecs)
enum stop_kind stop_soon;
int random_signal;
if (ecs->ws.kind == TARGET_WAITKIND_STOPPED)
{
/* Do we need to clean up the state of a thread that has
completed a displaced single-step? (Doing so usually affects
the PC, so do it here, before we set stop_pc.) */
displaced_step_fixup (ecs->ptid,
ecs->event_thread->suspend.stop_signal);
gdb_assert (ecs->ws.kind == TARGET_WAITKIND_STOPPED);
/* If we either finished a single-step or hit a breakpoint, but
the user wanted this thread to be stopped, pretend we got a
SIG0 (generic unsignaled stop). */
/* Do we need to clean up the state of a thread that has
completed a displaced single-step? (Doing so usually affects
the PC, so do it here, before we set stop_pc.) */
displaced_step_fixup (ecs->ptid,
ecs->event_thread->suspend.stop_signal);
if (ecs->event_thread->stop_requested
&& ecs->event_thread->suspend.stop_signal == GDB_SIGNAL_TRAP)
ecs->event_thread->suspend.stop_signal = GDB_SIGNAL_0;
}
/* If we either finished a single-step or hit a breakpoint, but
the user wanted this thread to be stopped, pretend we got a
SIG0 (generic unsignaled stop). */
if (ecs->event_thread->stop_requested
&& ecs->event_thread->suspend.stop_signal == GDB_SIGNAL_TRAP)
ecs->event_thread->suspend.stop_signal = GDB_SIGNAL_0;
stop_pc = regcache_read_pc (get_thread_regcache (ecs->ptid));