From 2a880905c48c897e67e8f75999b30f5b7f9875e6 Mon Sep 17 00:00:00 2001 From: "dlenev@mysql.com" <> Date: Wed, 24 Aug 2005 23:44:42 +0400 Subject: [PATCH] Correction of fix for bug #12280 "Triggers: crash if flush tables". We should not assume that "thd" argument of reload_acl_and_cache() is non-zero. Failure to do so will cause server to crash when one sends SIGHUP to it. --- sql/sql_parse.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 70920b07a97..c86b7eba024 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -6517,7 +6517,7 @@ void add_join_natural(TABLE_LIST *a, TABLE_LIST *b, List *using_fields) SYNOPSIS reload_acl_and_cache() - thd Thread handler + thd Thread handler (can be NULL!) options What should be reset/reloaded (tables, privileges, slave...) tables Tables to flush (if any) @@ -6539,7 +6539,7 @@ bool reload_acl_and_cache(THD *thd, ulong options, TABLE_LIST *tables, select_errors=0; /* Write if more errors */ bool tmp_write_to_binlog= 1; - if (thd->in_sub_stmt) + if (thd && thd->in_sub_stmt) { my_error(ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG, MYF(0), "FLUSH"); return 1;