diff options
author | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-02-01 16:43:29 +0000 |
---|---|---|
committer | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-02-01 16:43:29 +0000 |
commit | 6c08a18f5dd8a5019e8563b9862e20dbdf55c209 (patch) | |
tree | a35502e9bf8ba9c8ebc20be98f2891c086e8327f /libpthread/linuxthreads | |
parent | ddeb09cb2efb93eab71d1e49129dab580270cb90 (diff) |
Fix death event reporting properly.
Now GDB is happy and death events are reported as
[Thread 5126 (LWP 192) exited]
without GDB bailing out.
Diffstat (limited to 'libpthread/linuxthreads')
-rw-r--r-- | libpthread/linuxthreads/join.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/libpthread/linuxthreads/join.c b/libpthread/linuxthreads/join.c index 8d82d1fcb..f6c0e602c 100644 --- a/libpthread/linuxthreads/join.c +++ b/libpthread/linuxthreads/join.c @@ -42,8 +42,6 @@ PDEBUG("self=%p, pid=%d\n", self, self->p_pid); /* Store return value */ __pthread_lock(THREAD_GETMEM(self, p_lock), self); THREAD_SETMEM(self, p_retval, retval); - /* Say that we've terminated */ - THREAD_SETMEM(self, p_terminated, 1); /* See whether we have to signal the death. */ if (THREAD_GETMEM(self, p_report_events)) { @@ -61,12 +59,12 @@ PDEBUG("self=%p, pid=%d\n", self, self->p_pid); THREAD_SETMEM(self, p_eventbuf.eventdata, self); __pthread_last_event = self; -#if 0 /* Appears like DEATH event reporting is broken */ /* Now call the function to signal the event. */ __linuxthreads_death_event(); -#endif } } + /* Say that we've terminated */ + THREAD_SETMEM(self, p_terminated, 1); /* See if someone is joining on us */ joining = THREAD_GETMEM(self, p_joining); PDEBUG("joining = %p, pid=%d\n", joining, joining->p_pid); |