diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/infrun.c | 11 |
2 files changed, 12 insertions, 5 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2faf6c2..2bcd0fb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +Wed Mar 2 09:17:55 1994 Jim Kingdon (kingdon@deneb.cygnus.com) + + * infrun.c (wait_for_inferior): In checking + remove_breakpoints_on_following_step, check + through_sigtramp_breakpoint as well as step_resume_breakpoint. + Tue Mar 1 16:22:56 1994 Jim Kingdon (kingdon@deneb.cygnus.com) * os9kread.c (os9k_process_one_symbol): Rename diff --git a/gdb/infrun.c b/gdb/infrun.c index 146621c..453fb26 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -984,9 +984,9 @@ switch_thread: sr_sal.pc = prev_pc; sr_sal.symtab = NULL; sr_sal.line = 0; - /* We perhaps could set the frame if we kept track of what - the frame corresponding to prev_pc was. But we don't, - so don't. */ + /* We could probably be setting the frame to + prev_frame_address; the reason we don't is that it didn't used + to exist. */ step_resume_breakpoint = set_momentary_breakpoint (sr_sal, NULL, bp_step_resume); if (breakpoints_inserted) @@ -1281,8 +1281,9 @@ step_into_function: to one-proceed past a breakpoint. */ /* If we've just finished a special step resume and we don't want to hit a breakpoint, pull em out. */ - if (step_resume_breakpoint == NULL && - remove_breakpoints_on_following_step) + if (step_resume_breakpoint == NULL + && through_sigtramp_breakpoint == NULL + && remove_breakpoints_on_following_step) { remove_breakpoints_on_following_step = 0; remove_breakpoints (); |