diff options
author | unknown <bell@book.sanja.is.com.ua> | 2005-05-09 01:59:10 +0300 |
---|---|---|
committer | unknown <bell@book.sanja.is.com.ua> | 2005-05-09 01:59:10 +0300 |
commit | a6b1546676ecb06a1e2d555ab8716d89bd359c31 (patch) | |
tree | 8d33320966b89e4ec888a4f4fbd50dc50071ad92 /sql/sp_rcontext.h | |
parent | 930644731d2689929e2372110536c4fbc7330a60 (diff) | |
download | mariadb-git-a6b1546676ecb06a1e2d555ab8716d89bd359c31.tar.gz |
Item::fix_field need correct pointer on item reference to chnge it if itis need, so support of correct item address added to SP commands (BUG#5963)
some optimisation of IF/NOT IF ptomised to Pem
mysql-test/r/sp.result:
test for bug#5963
mysql-test/t/sp.test:
test for bug#5963
sql/item.cc:
new method which return reference on Item for SP variables support
sql/item.h:
comment fixed
method added
sql/sp_head.cc:
preparation of item made separate function
we do not need new constant Item to check IF/IF NOT
support of passing correct address of item for fix_fields method
sql/sp_rcontext.cc:
support of Item address passing to fix_fields
sql/sp_rcontext.h:
support of correct address passing to fix_fields
sql/sql_class.cc:
support of correct item address passing to fix_field
Diffstat (limited to 'sql/sp_rcontext.h')
-rw-r--r-- | sql/sp_rcontext.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sql/sp_rcontext.h b/sql/sp_rcontext.h index afcd937a369..c132032e32c 100644 --- a/sql/sp_rcontext.h +++ b/sql/sp_rcontext.h @@ -74,7 +74,7 @@ class sp_rcontext : public Sql_alloc /* Returns 0 on success, -1 on (eval) failure */ int - set_item_eval(uint idx, Item *i, enum_field_types type); + set_item_eval(uint idx, Item **i, enum_field_types type); inline Item * get_item(uint idx) @@ -82,6 +82,14 @@ class sp_rcontext : public Sql_alloc return m_frame[idx]; } + + inline Item ** + get_item_addr(uint idx) + { + return m_frame + idx; + } + + inline void set_result(Item *it) { |