Bug#54334 Double initialization of mysys mutexes
Prior to this fix, mysys mutexes such as THR_LOCK_lock could be initialized twice by a call to my_init(). The root cause was out of place initialization in my_basic_init(), calling my_thread_global_init(). With this fix, - my_basic_init() properly initializes the mutex implementation itself, for SAFE or FAST mutexes, and for platform dependent initializations, before initialiazing a mutex. - my_init() properly initializes mysys mutexes once, when making the first call to my_thread_global_init().
This commit is contained in:
parent
75dce25ca8
commit
ddf6a66504
@ -104,8 +104,6 @@ my_bool my_basic_init(void)
|
|||||||
mysql_stdin= & instrumented_stdin;
|
mysql_stdin= & instrumented_stdin;
|
||||||
|
|
||||||
#if defined(THREAD)
|
#if defined(THREAD)
|
||||||
if (my_thread_global_init())
|
|
||||||
return 1;
|
|
||||||
# if defined(SAFE_MUTEX)
|
# if defined(SAFE_MUTEX)
|
||||||
safe_mutex_global_init(); /* Must be called early */
|
safe_mutex_global_init(); /* Must be called early */
|
||||||
# endif
|
# endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user