OSDN Git Service

* infrun.c (stepping_past_breakpoint): New global variable.
authoruweigand <uweigand>
Mon, 10 Sep 2007 18:49:25 +0000 (18:49 +0000)
committeruweigand <uweigand>
Mon, 10 Sep 2007 18:49:25 +0000 (18:49 +0000)
commitda64ed6a33ae7517427bfb2f295594673d86c516
tree54ad00718f76d57b5b2e219248e9c797343a25af
parent56501c899e76e824b134c579b5880bfae4a7276f
* infrun.c (stepping_past_breakpoint): New global variable.
(stepping_past_breakpoint_ptid): Likewise.
(prepare_to_proceed): Add STEP parameter.  Do not check for Ctrl-C.
Only switch threads if we need to single-step over a breakpoint hit
in the previously selected thread.  If stepping, remember previous
thread to switch back to in STEPPING_PAST_BREAKPOINT[_PTID].  Call
switch_to_thread instead of copying its contents.
(proceed): Pass STEP to prepare_to_proceed.  Always set ONEPROC if
prepare_to_proceed returns true.
(init_wait_for_inferior): Reset STEPPING_PAST_BREAKPOINT.
(context_switch): Call switch_to_thread.
(handle_inferior_event): Switch back to previous thread if requested
in STEPPING_PAST_BREAKPOINT[_PTID] by prepare_to_proceed.
* gdbthread.h (switch_to_thread): Add prototype.
* thread.c (switch_to_thread): Make global.
gdb/ChangeLog
gdb/gdbthread.h
gdb/infrun.c
gdb/thread.c