summaryrefslogtreecommitdiff
path: root/sql/sql_class.cc
diff options
context:
space:
mode:
authorunknown <konstantin@mysql.com>2005-11-23 21:18:10 +0300
committerunknown <konstantin@mysql.com>2005-11-23 21:18:10 +0300
commit0633a41c154fdf4f38880072b6f9356b2d6c2bd8 (patch)
tree82cf7863e471a48c80281113d66a428d0a2c3a1c /sql/sql_class.cc
parent4aea839bde48c615d2d672ebbd29f20c297fe670 (diff)
downloadmariadb-git-0633a41c154fdf4f38880072b6f9356b2d6c2bd8.tar.gz
Always initialize THD::thread_stack: it's used in
check_stack_overrun(). sql/slave.cc: Move initialization of THD::thread_stack before THD::store_globals() sql/sql_acl.cc: Initialize THD::thread_stack in artificial THDs used to load gratns subsystem. sql/sql_class.cc: Add an assert that THD::thread_stack is assigned. sql/sql_insert.cc: Add initialization of THD::thread_stack (delayed insert thread). sql/sql_parse.cc: Move initialization of THD::thread_stack before THD::store_globals(). sql/sql_udf.cc: Add initialization for THD::thread_stack (an artificial THD used to initialize UDF subsystem). sql/tztime.cc: Add initialization for THD::thread_stack (an artificial THD used to initialize timezones).
Diffstat (limited to 'sql/sql_class.cc')
-rw-r--r--sql/sql_class.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index 82af1265a9d..edee8c8547d 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -517,6 +517,12 @@ void THD::awake(THD::killed_state state_to_set)
bool THD::store_globals()
{
+ /*
+ Assert that thread_stack is initialized: it's necessary to be able
+ to track stack overrun.
+ */
+ DBUG_ASSERT(this->thread_stack);
+
if (my_pthread_setspecific_ptr(THR_THD, this) ||
my_pthread_setspecific_ptr(THR_MALLOC, &mem_root))
return 1;