summaryrefslogtreecommitdiff
path: root/pthread_start.c
diff options
context:
space:
mode:
Diffstat (limited to 'pthread_start.c')
-rw-r--r--pthread_start.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pthread_start.c b/pthread_start.c
index 48c2d95a..c3a01c41 100644
--- a/pthread_start.c
+++ b/pthread_start.c
@@ -41,7 +41,7 @@
#include <pthread.h>
#include <sched.h>
-GC_INNER void * GC_start_rtn_prepare_thread(void *(**pstart)(void *),
+GC_INNER GC_thread GC_start_rtn_prepare_thread(void *(**pstart)(void *),
void **pstart_arg,
struct GC_stack_base *sb, void *arg);
GC_INNER void GC_thread_exit_proc(void *arg);
@@ -56,7 +56,7 @@ void * GC_CALLBACK GC_inner_start_routine(struct GC_stack_base *sb, void *arg)
GC_thread me = GC_start_rtn_prepare_thread(&start, &start_arg, sb, arg);
# ifndef NACL
- pthread_cleanup_push(GC_thread_exit_proc, 0);
+ pthread_cleanup_push(GC_thread_exit_proc, me);
# endif
result = (*start)(start_arg);
# ifdef DEBUG_THREADS