mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-28 18:10:46 +00:00
gdb
* infrun.c (save_infcall_control_state): Handle the exception-resume breakpoint. (restore_infcall_control_state): Likewise. (discard_infcall_control_state): Likewise. gdb/testsuite 2010-12-15 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.cp/nextoverthrow.cc (dummy): Return int 0. (NextOverThrowDerivates) <resumebpt>: New. (resumebpt_test): New. (main): Call resumebpt_test. * gdb.cp/nextoverthrow.exp: New block for test of "resumebpt".
This commit is contained in:
@@ -6379,6 +6379,7 @@ save_infcall_control_state (void)
|
||||
inf_status->inferior_control = inf->control;
|
||||
|
||||
tp->control.step_resume_breakpoint = NULL;
|
||||
tp->control.exception_resume_breakpoint = NULL;
|
||||
|
||||
/* Save original bpstat chain to INF_STATUS; replace it in TP with copy of
|
||||
chain. If caller's caller is walking the chain, they'll be happier if we
|
||||
@@ -6428,6 +6429,10 @@ restore_infcall_control_state (struct infcall_control_state *inf_status)
|
||||
if (tp->control.step_resume_breakpoint)
|
||||
tp->control.step_resume_breakpoint->disposition = disp_del_at_next_stop;
|
||||
|
||||
if (tp->control.exception_resume_breakpoint)
|
||||
tp->control.exception_resume_breakpoint->disposition
|
||||
= disp_del_at_next_stop;
|
||||
|
||||
/* Handle the bpstat_copy of the chain. */
|
||||
bpstat_clear (&tp->control.stop_bpstat);
|
||||
|
||||
@@ -6476,6 +6481,10 @@ discard_infcall_control_state (struct infcall_control_state *inf_status)
|
||||
inf_status->thread_control.step_resume_breakpoint->disposition
|
||||
= disp_del_at_next_stop;
|
||||
|
||||
if (inf_status->thread_control.exception_resume_breakpoint)
|
||||
inf_status->thread_control.exception_resume_breakpoint->disposition
|
||||
= disp_del_at_next_stop;
|
||||
|
||||
/* See save_infcall_control_state for info on stop_bpstat. */
|
||||
bpstat_clear (&inf_status->thread_control.stop_bpstat);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user