#At file:///home/cpowers/work/dev/dev-55-bugfixing/mysql/ based on revid:chris.powers@stripped
3190 Christopher Powers 2010-08-22
Bug #55345, "mysql_library_init causes segfault if executed after calling mysql_library_end"
my_thread_global_end() now sets mysql_thread_basic_global_init_done= 0
to ensure destroyed mutexes are not reused.
I verified that clearing this flag will not result in the redundant allocation
of other resources allocated by my_thread_global_init() and
my_thread_basic_global_init().
@ mysys/my_thr_init.c
Clear mysql_thread_basic_global_init_done flag at the end of my_thread_global_end()
modified:
mysys/my_thr_init.c
=== modified file 'mysys/my_thr_init.c'
--- a/mysys/my_thr_init.c 2010-02-13 16:01:32 +0000
+++ b/mysys/my_thr_init.c 2010-08-23 01:41:42 +0000
@@ -302,6 +302,8 @@ void my_thread_global_end(void)
#ifndef HAVE_GETHOSTBYNAME_R
mysql_mutex_destroy(&LOCK_gethostbyname_r);
#endif
+
+ my_thread_basic_global_init_done= 0;
}
static my_thread_id thread_id= 0;
Attachment: [text/bzr-bundle] bzr/chris.powers@oracle.com-20100823014142-n9xvppjn7nl2x3aw.bundle