summaryrefslogtreecommitdiff
path: root/sql/sp_rcontext.h
diff options
context:
space:
mode:
authorunknown <bell@book.sanja.is.com.ua>2005-05-09 01:59:10 +0300
committerunknown <bell@book.sanja.is.com.ua>2005-05-09 01:59:10 +0300
commita6b1546676ecb06a1e2d555ab8716d89bd359c31 (patch)
tree8d33320966b89e4ec888a4f4fbd50dc50071ad92 /sql/sp_rcontext.h
parent930644731d2689929e2372110536c4fbc7330a60 (diff)
downloadmariadb-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.h10
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)
{