diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6f9974e030..30cf1449ca 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2011-10-24 Pedro Alves + + * linux-nat.c (linux_handle_extended_wait): When handling a clone + event, in non-stop, if not stopping, make sure the new lwp has + last_resume_kind set to resume_continue. Assert that when we're + resuming the new lwp, its last_resume_kind is resume_continue. + 2011-10-24 Pedro Alves * infrun.c (handle_inferior_event): Don't assume inferior_ptid is diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c index f8a15c9121..4595c06c1f 100644 --- a/gdb/linux-nat.c +++ b/gdb/linux-nat.c @@ -2289,6 +2289,9 @@ linux_handle_extended_wait (struct lwp_info *lp, int status, { set_running (new_lp->ptid, 1); set_executing (new_lp->ptid, 1); + /* thread_db_attach_lwp -> lin_lwp_attach_lwp forced + resume_stop. */ + new_lp->last_resume_kind = resume_continue; } } @@ -2316,6 +2319,7 @@ linux_handle_extended_wait (struct lwp_info *lp, int status, if (status == 0) { + gdb_assert (new_lp->last_resume_kind == resume_continue); if (debug_linux_nat) fprintf_unfiltered (gdb_stdlog, "LHEW: resuming new LWP %ld\n",