summaryrefslogtreecommitdiff
path: root/sql/sql_lex.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2004-02-17 11:12:55 +0200
committerunknown <bell@sanja.is.com.ua>2004-02-17 11:12:55 +0200
commit952f99d4c604475217b8f096dc5bab94af8e04db (patch)
tree7656414131e3abbff86bae92c090d0209cd07663 /sql/sql_lex.cc
parent62cc89aad50b00c0ab1ef3e94c5a3467eb78eb70 (diff)
parent6826a55b1da73770ce067972efafc00f9d2f6670 (diff)
downloadmariadb-git-952f99d4c604475217b8f096dc5bab94af8e04db.tar.gz
merge
mysql-test/r/derived.result: Auto merged mysql-test/t/derived.test: Auto merged sql/item.cc: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_cmpfunc.h: Auto merged sql/item_sum.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_lex.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_union.cc: Auto merged sql/sql_update.cc: Auto merged
Diffstat (limited to 'sql/sql_lex.cc')
-rw-r--r--sql/sql_lex.cc20
1 files changed, 15 insertions, 5 deletions
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc
index d93134a3a0c..ce7aa4d02db 100644
--- a/sql/sql_lex.cc
+++ b/sql/sql_lex.cc
@@ -1500,11 +1500,17 @@ bool st_select_lex::setup_ref_array(THD *thd, uint order_group_num)
{
if (ref_pointer_array)
return 0;
+
+ /*
+ We have to create array in prepared statement memory if it is
+ prepared statement
+ */
+ Statement *stmt= thd->current_statement ? thd->current_statement : thd;
return (ref_pointer_array=
- (Item **)thd->alloc(sizeof(Item*) *
- (item_list.elements +
- select_n_having_items +
- order_group_num)* 5)) == 0;
+ (Item **)stmt->alloc(sizeof(Item*) *
+ (item_list.elements +
+ select_n_having_items +
+ order_group_num)* 5)) == 0;
}
@@ -1629,7 +1635,11 @@ void st_select_lex::print_limit(THD *thd, String *str)
/*
There are st_select_lex::add_table_to_list &
- st_select_lex::set_lock_for_tables in sql_parse.cc
+ st_select_lex::set_lock_for_tables are in sql_parse.cc
st_select_lex::print is in sql_select.h
+
+ st_select_lex_unit::prepare, st_select_lex_unit::exec,
+ st_select_lex_unit::cleanup, st_select_lex_unit::reinit_exec_mechanism
+ are in sql_union.cc
*/