summaryrefslogtreecommitdiff
path: root/subproc.c
diff options
context:
space:
mode:
authorRobert Swiecki <robert@swiecki.net>2019-02-21 08:42:03 +0100
committerRobert Swiecki <robert@swiecki.net>2019-02-21 08:42:03 +0100
commitc1b3938d7823f76975d0bb1b3d2b28f4287edbd7 (patch)
treea3bae53eef2d9593d63a9aaf01d38f6a928124f4 /subproc.c
parentcaaae318796adaca22a77f8faa8c5e54358af99c (diff)
downloadhonggfuzz-c1b3938d7823f76975d0bb1b3d2b28f4287edbd7.tar.gz
subproc: allow to specify whether a thread should be joinable
Diffstat (limited to 'subproc.c')
-rw-r--r--subproc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/subproc.c b/subproc.c
index d1afa0b4..7f35868f 100644
--- a/subproc.c
+++ b/subproc.c
@@ -484,11 +484,13 @@ void subproc_checkTermination(run_t* run) {
}
}
-bool subproc_runThread(honggfuzz_t* hfuzz, pthread_t* thread, void* (*thread_func)(void*)) {
+bool subproc_runThread(
+ honggfuzz_t* hfuzz, pthread_t* thread, void* (*thread_func)(void*), bool joinable) {
pthread_attr_t attr;
pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+ pthread_attr_setdetachstate(
+ &attr, joinable ? PTHREAD_CREATE_JOINABLE : PTHREAD_CREATE_DETACHED);
pthread_attr_setstacksize(&attr, _HF_PTHREAD_STACKSIZE);
pthread_attr_setguardsize(&attr, (size_t)sysconf(_SC_PAGESIZE));