From 94cfb27da3941eea2b20867eacc09a5b91168438 Mon Sep 17 00:00:00 2001 From: rpj Date: Thu, 30 Jul 1998 13:51:57 +0000 Subject: Thu Jul 30 23:12:45 1998 Ross Johnson * implement.h: Remove _pthread_find_entry() prototype. * private.c: Extend comments. Remove _pthread_find_entry() - no longer needed. * create.c (_pthread_start_call): Add call to TlsSetValue() to store the thread ID. * dll.c (PthreadsEntryPoint): Implement. This is called whenever a process loads the DLL. Used to initialise thread local storage. * implement.h: Add _pthread_threadID_TlsIndex. Add ()s around _PTHREAD_VALID expression. * misc.c (pthread_self): Re-implement using Win32 TLS to store the threads own ID. --- create.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'create.c') diff --git a/create.c b/create.c index 85b5a0f..87a8017 100644 --- a/create.c +++ b/create.c @@ -28,6 +28,8 @@ _pthread_start_call(void * us_arg) us = (pthread_t) us_arg; + (void) TlsSetValue(_pthread_threadID_TlsIndex, (LPVOID) us); + /* FIXME: For now, if priority setting fails then at least ensure that our records reflect true reality. */ if (SetThreadPriority((HANDLE) us->win32handle, us->attr.priority) == FALSE) -- cgit v1.2.3