diff options
author | unknown <bell@sanja.is.com.ua> | 2004-03-17 14:26:26 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2004-03-17 14:26:26 +0200 |
commit | f83cf4144065c12cad4007767e2e70d444fd0e05 (patch) | |
tree | 879e13469f1915539666e702fc32401e7f3a61d2 /sql/item_func.h | |
parent | 8242d1f19dcc00a8ad393485f19a1b3d806b8100 (diff) | |
download | mariadb-git-f83cf4144065c12cad4007767e2e70d444fd0e05.tar.gz |
DBUG_ASSERT(fixed == 0) added to fix_fields()
sql/item.cc:
layout fixed
fixed bug in prepared statements with subqueries and outer references
sql/item.h:
neg_transformer get thd argument to call fix_fields
sql/item_cmpfunc.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed Item_in_optimizer fixed flag
neg_arguments(), neg_transformer() call fix_field() on created items to avoid bouble fix field or non-called fixfields()
sql/item_cmpfunc.h:
neg_transformer get thd argument to call fix_fields
fixed forgoten cleanup() call of parent class
sql/item_func.cc:
DBUG_ASSERT(fixed == 0) and fixed flag check added to fix_fields()
sql/item_func.h:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed forgoten cleanup() call of parent class
sql/item_row.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
added forgoten 'fixed' flag set
sql/item_subselect.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed subquery transformation
sql/sql_base.cc:
check of fixed flag added
sql/sql_derived.cc:
fixed cleunup union in derived table during EXPLAIN command processing
sql/sql_select.cc:
thd argument add to function to allow call fix_fields() of new created items
fixed EXPLAIN double preparation
check of fixed flag added
eliminate_not_funcs fixed for corrcet fix_fields call of new created items
sql/sql_select.h:
thd argument add to function to allow call fix_fields() of new created items
sql/sql_union.cc:
union processing fixed
tests/client_test.c:
layout fixed
new test of outer references fron subqueries
Diffstat (limited to 'sql/item_func.h')
-rw-r--r-- | sql/item_func.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index 8fbe5a124da..b463be1e0ca 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -765,6 +765,7 @@ public: const char *func_name() const { return udf.name(); } bool fix_fields(THD *thd, struct st_table_list *tables, Item **ref) { + DBUG_ASSERT(fixed == 0); bool res= udf.fix_fields(thd, tables, this, arg_count, args); used_tables_cache= udf.used_tables_cache; const_item_cache= udf.const_item_cache; @@ -1000,6 +1001,7 @@ public: void cleanup() { DBUG_ENTER("Item_func_match"); + Item_real_func::cleanup(); if (!master && ft_handler) { ft_handler->please->close_search(ft_handler); |