summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/threadpool_unix.cc5
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;