summaryrefslogtreecommitdiff
path: root/ext/threads
diff options
context:
space:
mode:
authorArtur Bergman <sky@nanisky.com>2001-10-12 18:11:45 +0000
committerArtur Bergman <sky@nanisky.com>2001-10-12 18:11:45 +0000
commit74f0f59828f15458dfb57277ad8876f890f24446 (patch)
tree30794a0f502f4399345bfd7b49a44cbd1302740b /ext/threads
parent7f9a95ef4ccdf2b0ea72c8ae7e731ca9572edfac (diff)
downloadperl-74f0f59828f15458dfb57277ad8876f890f24446.tar.gz
pthread_keycreate not pthread_key_create under the here be dragons API
p4raw-id: //depot/perl@12411
Diffstat (limited to 'ext/threads')
-rwxr-xr-xext/threads/threads.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/ext/threads/threads.h b/ext/threads/threads.h
index 01baaa40c6..72a4872485 100755
--- a/ext/threads/threads.h
+++ b/ext/threads/threads.h
@@ -23,18 +23,24 @@ STMT_START {\
#include <thread.h>
#define PERL_THREAD_SETSPECIFIC(k,v) pthread_setspecific(k,v)
+#ifdef OLD_PTHREADS_API
+#define PERL_THREAD_DETACH(t) pthread_detach(&(t))
+#define PERL_THREAD_GETSPECIFIC(k,v) pthread_getspecific(k,&v)
#define PERL_THREAD_ALLOC_SPECIFIC(k) STMT_START {\
- if(pthread_key_create(&(k),0)) {\
+ if(pthread_keycreate(&(k),0)) {\
PerlIO_printf(PerlIO_stderr(), "panic threads.h: pthread_key_create");\
exit(1);\
}\
} STMT_END
-#ifdef OLD_PTHREADS_API
-#define PERL_THREAD_DETACH(t) pthread_detach(&(t))
-#define PERL_THREAD_GETSPECIFIC(k,v) pthread_getspecific(k,&v)
#else
#define PERL_THREAD_DETACH(t) pthread_detach((t))
#define PERL_THREAD_GETSPECIFIC(k,v) v = pthread_getspecific(k)
+#define PERL_THREAD_ALLOC_SPECIFIC(k) STMT_START {\
+ if(pthread_key_create(&(k),0)) {\
+ PerlIO_printf(PerlIO_stderr(), "panic threads.h: pthread_key_create");\
+ exit(1);\
+ }\
+} STMT_END
#endif
#endif