From: Doug Evans Date: Thu, 6 Feb 2014 00:08:59 +0000 (-0800) Subject: Keep current_inferior in sync with event_child. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ee1e2d4fb692736c754b42b69eb88c1f436c5f15;p=binutils-gdb.git Keep current_inferior in sync with event_child. * linux-low.c (linux_wait_for_event): Improve comment. (linux_wait_1): Keep current_inferior in sync with event_child. --- diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 2e53986c18b..53c2acceec6 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,8 @@ +2014-02-05 Doug Evans + + * linux-low.c (linux_wait_for_event): Improve comment. + (linux_wait_1): Keep current_inferior in sync with event_child. + 2014-01-22 Doug Evans * gdbthread.h (gdb_id_to_thread): Delete, unused. diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c index bac6134d05b..c72d681258c 100644 --- a/gdb/gdbserver/linux-low.c +++ b/gdb/gdbserver/linux-low.c @@ -1756,7 +1756,7 @@ ptid_t step_over_bkpt; child. Store the stop status through the status pointer WSTAT. OPTIONS is passed to the waitpid call. Return 0 if no child stop event was found and OPTIONS contains WNOHANG. Return the PID of - the stopped child otherwise. */ + the stopped child and update current_inferior otherwise. */ static int linux_wait_for_event (ptid_t ptid, int *wstat, int options) @@ -2681,6 +2681,9 @@ retry: select_event_lwp (&event_child); + /* current_inferior and event_child must stay in sync. */ + current_inferior = get_lwp_thread (event_child); + event_child->status_pending_p = 0; w = event_child->status_pending; }