summaryrefslogtreecommitdiff
path: root/rts/posix/OSThreads.c
diff options
context:
space:
mode:
Diffstat (limited to 'rts/posix/OSThreads.c')
-rw-r--r--rts/posix/OSThreads.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/rts/posix/OSThreads.c b/rts/posix/OSThreads.c
index e2471a223c..7dcf0eed15 100644
--- a/rts/posix/OSThreads.c
+++ b/rts/posix/OSThreads.c
@@ -134,7 +134,7 @@ int
createOSThread (OSThreadId* pId, char *name STG_UNUSED,
OSThreadProc *startProc, void *param)
{
- int result = pthread_create(pId, NULL, (void *(*)(void *))startProc, param);
+ int result = pthread_create(pId, NULL, startProc, param);
if (!result) {
pthread_detach(*pId);
#if defined(HAVE_PTHREAD_SETNAME_NP)
@@ -223,6 +223,7 @@ forkOS_createThreadWrapper ( void * entry )
cap = rts_lock();
rts_evalStableIO(&cap, (HsStablePtr) entry, NULL);
rts_unlock(cap);
+ rts_done();
return NULL;
}