From 78477e4843c34f2ad54d25975758c3342746d0cd Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 27 Apr 2000 18:26:29 +0000 Subject: [PATCH] (td_thr_get_info): Set ti_state to TD_THR_ACTIVE instead of TD_THR_RUN. If the thread is no longer running but is still joinable, set it to TD_THR_ZOMBIE. Otherwise set it to TD_THR_UNKNOWN. --- linuxthreads_db/td_thr_get_info.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/linuxthreads_db/td_thr_get_info.c b/linuxthreads_db/td_thr_get_info.c index 25ad3408a9..d8f02eefac 100644 --- a/linuxthreads_db/td_thr_get_info.c +++ b/linuxthreads_db/td_thr_get_info.c @@ -1,5 +1,5 @@ /* Get thread information. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1999. @@ -46,7 +46,7 @@ td_thr_get_info (const td_thrhandle_t *th, td_thrinfo_t *infop) { infop->ti_tid = th->th_ta_p->pthread_threads_max * 2 + 1; infop->ti_type = TD_THR_SYSTEM; - infop->ti_state = TD_THR_RUN; + infop->ti_state = TD_THR_ACTIVE; } else { @@ -54,13 +54,14 @@ td_thr_get_info (const td_thrhandle_t *th, td_thrinfo_t *infop) infop->ti_tls = (char *) pds.p_specific; infop->ti_pri = pds.p_priority; infop->ti_type = TD_THR_USER; - - if (pds.p_exited) - /* This should not happen. */ + + if (! pds.p_terminated) + /* XXX For now there is no way to get more information. */ + infop->ti_state = TD_THR_ACTIVE; + else if (! pds.p_detached) infop->ti_state = TD_THR_ZOMBIE; else - /* XXX For now there is no way to get more information. */ - infop->ti_state = TD_THR_RUN; + infop->ti_state = TD_THR_UNKNOWN; } /* Initialization which are the same in both cases. */