summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/cygthread.cc2
-rw-r--r--winsup/cygwin/thread.cc1
3 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index bd8363165..1b53aa42e 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2005-01-29 Christopher Faylor <cgf@timesys.com>
+
+ * cygthread.cc (new): Add a little more debugging.
+ * thread.cc (pthread_null::exit): Add a _my_tls.remove() for safety.
+
2005-01-28 Christopher Faylor <cgf@timesys.com>
* cygtls.cc (cygtls::call2): Move socket cleanup.
diff --git a/winsup/cygwin/cygthread.cc b/winsup/cygwin/cygthread.cc
index 64d792bc0..adeecb320 100644
--- a/winsup/cygwin/cygthread.cc
+++ b/winsup/cygwin/cygthread.cc
@@ -141,7 +141,7 @@ new (size_t)
/* available */
#ifdef DEBUGGING
if (info->__name)
- api_fatal ("name not NULL? id %p, i %d", info->id, info - threads);
+ api_fatal ("name not NULL? %s, id %p, i %d", info->__name, info->id, info - threads);
#endif
goto out;
}
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index b6c2e94d5..39e33d17c 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -3288,6 +3288,7 @@ pthread_null::create (void *(*)(void *), pthread_attr *, void *)
void
pthread_null::exit (void *value_ptr)
{
+ _my_tls.remove (INFINITE);
ExitThread (0);
}