diff options
Diffstat (limited to 'rts/posix/OSThreads.c')
-rw-r--r-- | rts/posix/OSThreads.c | 3 |
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; } |