forked from Imagelibrary/binutils-gdb
* breakpoint.c (mark_breakpoints_out): Make public.
(update_breakpoints_after_exec): Don't call mark_breakpoints_out here. Update comment. * breakpoint.h (mark_breakpoints_out): Declare. * linux-nat.c (linux_handle_extended_wait): On TARGET_WAITKIND_EXECD, call mark_breakpoints_out. * inf-ttrace.c (inf_ttrace_wait): Likewise.
This commit is contained in:
@@ -1758,6 +1758,16 @@ linux_handle_extended_wait (struct lwp_info *lp, int status,
|
||||
linux_parent_pid = 0;
|
||||
}
|
||||
|
||||
/* At this point, all inserted breakpoints are gone. Doing this
|
||||
as soon as we detect an exec prevents the badness of deleting
|
||||
a breakpoint writing the current "shadow contents" to lift
|
||||
the bp. That shadow is NOT valid after an exec.
|
||||
|
||||
Note that we have to do this after the detach_breakpoints
|
||||
call above, otherwise breakpoints wouldn't be lifted from the
|
||||
parent on a vfork, because detach_breakpoints would think
|
||||
that breakpoints are not inserted. */
|
||||
mark_breakpoints_out ();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user