summaryrefslogtreecommitdiff
path: root/sql/item_func.h
diff options
context:
space:
mode:
authorunknown <acurtis@pcgem.rdg.cyberkinetica.com>2005-03-04 21:14:35 +0000
committerunknown <acurtis@pcgem.rdg.cyberkinetica.com>2005-03-04 21:14:35 +0000
commit1220069c537a733b233c446e27aec9f9247aef31 (patch)
tree2221a43d29eb490f6aab0ccd507746719c3e782a /sql/item_func.h
parent5abbffd702026f86c7ba8c8b0a515f9ae2ae23bf (diff)
downloadmariadb-git-1220069c537a733b233c446e27aec9f9247aef31.tar.gz
Bug#3788
Crashes with stored procedure return non-string values Also fixes Bug#2773 mysql-test/r/information_schema.result: Bug#3788 Fix results for bugfix mysql-test/r/sp.result: Bug#3788 Tests for Bug Fix results for bugfix mysql-test/t/sp.test: Bug#3788 New tests for bug sql/item.cc: Fix unrelated crash in view test with --ps-protocol. sql/item_func.cc: Bug#3788 Alter how SP function result types are handled. sql/item_func.h: Bug#3788 Alter how SP function result types are handled. sql/mysql_priv.h: Bug#3788 Prototypes for new global functions sql/sp.cc: Bug#3788 Alter how function return type is reported sql/sp_head.cc: Bug#3788 Change how function return types are stored for SPs sql/sp_head.h: Bug#3788 Change how function return types are stored for SPs sql/sql_parse.cc: Bug#3788 Split out field construction into its own function sql/sql_table.cc: Bug#3788 Split out field preparation code into its own function sql/sql_yacc.yy: Bug#3788 Change how function return types are stored for SPs sql/unireg.cc: Bug#3788 Add assertion check
Diffstat (limited to 'sql/item_func.h')
-rw-r--r--sql/item_func.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sql/item_func.h b/sql/item_func.h
index 48fc278ccde..cb096732b85 100644
--- a/sql/item_func.h
+++ b/sql/item_func.h
@@ -1250,8 +1250,13 @@ class Item_func_sp :public Item_func
private:
sp_name *m_name;
mutable sp_head *m_sp;
+ mutable struct {
+ TABLE table;
+ TABLE_SHARE share;
+ } dummy_table;
int execute(Item **itp);
+ Field *sp_result_field(void) const;
public:
@@ -1266,6 +1271,10 @@ public:
enum enum_field_types field_type() const;
+ Field *tmp_table_field(TABLE *t_arg);
+
+ void make_field(Send_field *tmp_field);
+
Item_result result_type() const;
longlong val_int()