From 4af1fd59dd19ddae38b792581dc99b8ec325dfbb Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Tue, 17 Apr 2018 11:37:35 +0200 Subject: [PATCH] thread: Properly clean up meta data of thread if pthread_create() fails --- src/libstrongswan/threading/thread.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libstrongswan/threading/thread.c b/src/libstrongswan/threading/thread.c index de5cbaa21..bd68b5a19 100644 --- a/src/libstrongswan/threading/thread.c +++ b/src/libstrongswan/threading/thread.c @@ -348,6 +348,8 @@ thread_t *thread_create(thread_main_t main, void *arg) { DBG1(DBG_LIB, "failed to create thread!"); this->mutex->lock(this->mutex); + this->terminated = TRUE; + this->detached_or_joined = TRUE; thread_destroy(this); return NULL; }