diff options
-rw-r--r-- | sql/threadpool_unix.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/threadpool_unix.cc b/sql/threadpool_unix.cc index 6d0ab80ad78..d421870fcab 100644 --- a/sql/threadpool_unix.cc +++ b/sql/threadpool_unix.cc @@ -470,7 +470,10 @@ static void* timer_thread(void *param) mysql_mutex_lock(&timer->mutex); int err = mysql_cond_timedwait(&timer->cond, &timer->mutex, &ts); if (timer->shutdown) + { + mysql_mutex_unlock(&timer->mutex); break; + } if (err == ETIMEDOUT) { timer->current_microtime= microsecond_interval_timer(); @@ -488,6 +491,8 @@ static void* timer_thread(void *param) } mysql_mutex_unlock(&timer->mutex); } + + mysql_mutex_destroy(&timer->mutex); DBUG_POP(); my_thread_end(); return NULL; |