From c32c64b7a18f8b1337ed58b285d42763180aee05 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Sun, 30 Mar 2014 12:37:50 -0700 Subject: [PATCH] * infrun.c (set_last_target_status): New function. (handle_inferior_event): Call it. --- gdb/ChangeLog | 5 +++++ gdb/infrun.c | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4c464e2e1ea..25ab6fa958f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2014-03-30 Doug Evans + + * infrun.c (set_last_target_status): New function. + (handle_inferior_event): Call it. + 2014-03-30 Doug Evans * inferior.h (enum stop_kind): Improve comment. diff --git a/gdb/infrun.c b/gdb/infrun.c index 8f9e820735a..31bb1327210 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -2965,6 +2965,15 @@ init_thread_stepping_state (struct thread_info *tss) tss->step_after_step_resume_breakpoint = 0; } +/* Set the cached copy of the last ptid/waitstatus. */ + +static void +set_last_target_status (ptid_t ptid, struct target_waitstatus status) +{ + target_last_wait_ptid = ptid; + target_last_waitstatus = status; +} + /* Return the cached copy of the last pid/waitstatus returned by target_wait()/deprecated_target_wait_hook(). The data is actually cached by handle_inferior_event(), which gets called immediately @@ -3272,8 +3281,7 @@ handle_inferior_event (struct execution_control_state *ecs) } /* Cache the last pid/waitstatus. */ - target_last_wait_ptid = ecs->ptid; - target_last_waitstatus = ecs->ws; + set_last_target_status (ecs->ptid, ecs->ws); /* Always clear state belonging to the previous time we stopped. */ stop_stack_dummy = STOP_NONE; -- 2.30.2