summaryrefslogtreecommitdiff
path: root/mysys/my_thr_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'mysys/my_thr_init.c')
-rw-r--r--mysys/my_thr_init.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/mysys/my_thr_init.c b/mysys/my_thr_init.c
index ee9bc91e910..e2e03cc37a8 100644
--- a/mysys/my_thr_init.c
+++ b/mysys/my_thr_init.c
@@ -355,13 +355,16 @@ void my_thread_end(void)
PSI_server->delete_current_thread();
#endif
+ DBUG_POP();
+
+ pthread_setspecific(THR_KEY_mysys,0);
+
if (tmp && tmp->init)
{
#if !defined(DBUG_OFF)
/* tmp->dbug is allocated inside DBUG library */
if (tmp->dbug)
{
- DBUG_POP();
free(tmp->dbug);
tmp->dbug=0;
}
@@ -384,7 +387,6 @@ void my_thread_end(void)
TRASH(tmp, sizeof(*tmp));
free(tmp);
}
- pthread_setspecific(THR_KEY_mysys,0);
}
struct st_my_thread_var *_my_thread_var(void)