Suggested by Vladimir Prus <ghost@cs.msu.su>:
* infrun.c (handle_inferior_event): Check for line information in undebuggable functions.
This commit is contained in:
parent
c2dde2c9c9
commit
7ed0fe6656
|
@ -1,3 +1,9 @@
|
|||
2005-07-31 Daniel Jacobowitz <dan@codesourcery.com>
|
||||
|
||||
Suggested by Vladimir Prus <ghost@cs.msu.su>:
|
||||
* infrun.c (handle_inferior_event): Check for line information in
|
||||
undebuggable functions.
|
||||
|
||||
2005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* cli-out.c (cli_field_fmt, cli_message, out_field_fmt): Add
|
||||
|
|
11
gdb/infrun.c
11
gdb/infrun.c
|
@ -2485,18 +2485,21 @@ process_event_stop_test:
|
|||
}
|
||||
}
|
||||
|
||||
ecs->sal = find_pc_line (stop_pc, 0);
|
||||
|
||||
/* NOTE: tausq/2004-05-24: This if block used to be done before all
|
||||
the trampoline processing logic, however, there are some trampolines
|
||||
that have no names, so we should do trampoline handling first. */
|
||||
if (step_over_calls == STEP_OVER_UNDEBUGGABLE
|
||||
&& ecs->stop_func_name == NULL)
|
||||
&& ecs->stop_func_name == NULL
|
||||
&& ecs->sal.line == 0)
|
||||
{
|
||||
if (debug_infrun)
|
||||
fprintf_unfiltered (gdb_stdlog, "infrun: stepped into undebuggable function\n");
|
||||
|
||||
/* The inferior just stepped into, or returned to, an
|
||||
undebuggable function (where there is no symbol, not even a
|
||||
minimal symbol, corresponding to the address where the
|
||||
undebuggable function (where there is no debugging information
|
||||
and no line number corresponding to the address where the
|
||||
inferior stopped). Since we want to skip this kind of code,
|
||||
we keep going until the inferior returns from this
|
||||
function. */
|
||||
|
@ -2532,8 +2535,6 @@ process_event_stop_test:
|
|||
return;
|
||||
}
|
||||
|
||||
ecs->sal = find_pc_line (stop_pc, 0);
|
||||
|
||||
if (ecs->sal.line == 0)
|
||||
{
|
||||
/* We have no line number information. That means to stop
|
||||
|
|
Loading…
Reference in New Issue