* infrun.c (wait_for_inferior): In checking
authorJim Kingdon <jkingdon@engr.sgi.com>
Wed, 2 Mar 1994 17:49:45 +0000 (17:49 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Wed, 2 Mar 1994 17:49:45 +0000 (17:49 +0000)
remove_breakpoints_on_following_step, check
through_sigtramp_breakpoint as well as step_resume_breakpoint.

gdb/ChangeLog
gdb/infrun.c

index 2faf6c29d7dbfb448a426e0823cd48e7dc7fdf70..2bcd0fb2a4d4568f63987679bc0a54fdc405714f 100644 (file)
@@ -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
index 146621c75b5d05f14af4c5753b7a6abea3811362..453fb2664c2f686e8146ea7e40e0f4a6512d383f 100644 (file)
@@ -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 ();