aboutsummaryrefslogtreecommitdiff
path: root/gdb/infrun.c
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1993-09-16 20:18:26 +0000
committerStu Grossman <grossman@cygnus>1993-09-16 20:18:26 +0000
commitc9de302ba51a69ae54c6640571fe9f8ed491095c (patch)
treebf48defa386bbfab3d40ccaf7c99056b96f13ae7 /gdb/infrun.c
parent2670a1dd47e64e00b99cc78fadefb6bf5db21351 (diff)
downloadgdb-c9de302ba51a69ae54c6640571fe9f8ed491095c.zip
gdb-c9de302ba51a69ae54c6640571fe9f8ed491095c.tar.gz
gdb-c9de302ba51a69ae54c6640571fe9f8ed491095c.tar.bz2
* infrun.c (wait_for_inferior): Allow user to single step within
a stack dummy.
Diffstat (limited to 'gdb/infrun.c')
-rw-r--r--gdb/infrun.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 020ef5b..a9d8a64 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -888,16 +888,19 @@ wait_for_inferior ()
do not stop. */
/* If this is the breakpoint at the end of a stack dummy,
- just stop silently. */
- if (PC_IN_CALL_DUMMY (stop_pc, stop_sp, stop_frame_address))
- {
- stop_print_frame = 0;
- stop_stack_dummy = 1;
+ just stop silently, unless the user was doing an si/ni, in which
+ case she'd better know what she's doing. */
+
+ if (PC_IN_CALL_DUMMY (stop_pc, stop_sp, stop_frame_address)
+ && !step_range_end)
+ {
+ stop_print_frame = 0;
+ stop_stack_dummy = 1;
#ifdef HP_OS_BUG
- trap_expected_after_continue = 1;
+ trap_expected_after_continue = 1;
#endif
- break;
- }
+ break;
+ }
if (step_resume_breakpoint)
/* Having a step-resume breakpoint overrides anything