summaryrefslogtreecommitdiff
path: root/sql/sys_vars.h
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@montyprogram.com>2013-07-29 16:03:41 +0200
committerVladislav Vaintroub <wlad@montyprogram.com>2013-07-29 16:03:41 +0200
commit3ef0157daa3593d2003e14fac3a7a8a249e9c048 (patch)
tree89743bedcf041c1cb81a72ca2021da2a7f4c46c4 /sql/sys_vars.h
parent9e13011efb137728e14a89d936616a14ebee8f59 (diff)
downloadmariadb-git-3ef0157daa3593d2003e14fac3a7a8a249e9c048.tar.gz
MDEV-4815 - allow multiple mysql_server_init() / mysql_server_end() in the same process, for embedded library.
- Reset static variables that are used to signal "init done" for DBUG, in dbug_end() - Set string server variables to NULL after memory for the value is freed - avoids double free() - fix DBUG_ASSERTs that happened during reinitialization.
Diffstat (limited to 'sql/sys_vars.h')
-rw-r--r--sql/sys_vars.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sql/sys_vars.h b/sql/sys_vars.h
index 8345a2836dd..b7be81afd73 100644
--- a/sql/sys_vars.h
+++ b/sql/sys_vars.h
@@ -427,7 +427,10 @@ public:
void cleanup()
{
if (flags & ALLOCATED)
+ {
my_free(global_var(char*));
+ global_var(char *)= NULL;
+ }
flags&= ~ALLOCATED;
}
static bool do_string_check(THD *thd, set_var *var, CHARSET_INFO *charset)