From 600a28368916ae07c0694ae090dcba7f2c52b12a Mon Sep 17 00:00:00 2001 From: Staale Smedseng Date: Fri, 26 Feb 2010 15:30:14 +0100 Subject: Bug #45058 init_available_charsets uses double checked locking A client doing multiple mysql_library_init() and mysql_library_end() calls over the lifetime of the process may experience lost character set data, potentially even a SIGSEGV. This patch reinstates the reloading of character set data when a mysql_library_init() is done after a mysql_library_end(). --- libmysql/libmysql.c | 1 + 1 file changed, 1 insertion(+) (limited to 'libmysql/libmysql.c') diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index f626361536f..6ea777a0702 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -211,6 +211,7 @@ void STDCALL mysql_server_end() } else { + free_charsets(); mysql_thread_end(); } -- cgit v1.2.1