summaryrefslogtreecommitdiffstats
path: root/libpthread/linuxthreads_db/td_thr_getgregs.c
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-02-27 18:13:05 +0000
committerEric Andersen <andersen@codepoet.org>2003-02-27 18:13:05 +0000
commit187dd78d7bd1c03fcf16e54a30314512d38e1a4a (patch)
tree9780638e5286b40da74a128c9f540a9ea720862f /libpthread/linuxthreads_db/td_thr_getgregs.c
parentd4d6e2c50565da18253cd0d6f3332484142b6587 (diff)
downloaduClibc-alpine-187dd78d7bd1c03fcf16e54a30314512d38e1a4a.tar.bz2
uClibc-alpine-187dd78d7bd1c03fcf16e54a30314512d38e1a4a.tar.xz
Major update for pthreads, based in large part on improvements
from glibc 2.3. This should make threads much more efficient. -Erik
Diffstat (limited to 'libpthread/linuxthreads_db/td_thr_getgregs.c')
-rw-r--r--libpthread/linuxthreads_db/td_thr_getgregs.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/libpthread/linuxthreads_db/td_thr_getgregs.c b/libpthread/linuxthreads_db/td_thr_getgregs.c
index 5a42b6770..6f00677d6 100644
--- a/libpthread/linuxthreads_db/td_thr_getgregs.c
+++ b/libpthread/linuxthreads_db/td_thr_getgregs.c
@@ -26,7 +26,14 @@ td_thr_getgregs (const td_thrhandle_t *th, prgregset_t gregs)
{
struct _pthread_descr_struct pds;
- LOG (__FUNCTION__);
+ LOG ("td_thr_getgregs");
+
+ if (th->th_unique == NULL)
+ {
+ /* No data yet. */
+ memset (gregs, '\0', sizeof (prgregset_t));
+ return TD_OK;
+ }
/* We have to get the state and the PID for this thread. */
if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds,