summaryrefslogtreecommitdiff
path: root/sql/sql_union.cc
diff options
context:
space:
mode:
authorunknown <cmiller@zippy.cornsilk.net>2006-11-02 17:51:59 -0500
committerunknown <cmiller@zippy.cornsilk.net>2006-11-02 17:51:59 -0500
commit75ed6f1a3ba3e908d7feaf5f1fd658ff7e4309f3 (patch)
treedc9dc6a9c5046129bcdf2523c94969503fb1a0cc /sql/sql_union.cc
parent74a15e2f8e73ec23c69d667e7c36b03822ba3fb4 (diff)
parent6afaa993e4142527a0f6cc8b9d853e976105a716 (diff)
downloadmariadb-git-75ed6f1a3ba3e908d7feaf5f1fd658ff7e4309f3.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint BitKeeper/deleted/.del-CMakeLists.txt~1: Auto merged BitKeeper/deleted/.del-make_win_bin_dist: Auto merged configure.in: Auto merged include/my_global.h: Auto merged include/mysql.h: Auto merged libmysqld/lib_sql.cc: Auto merged mysql-test/include/mix1.inc: Auto merged mysql-test/r/ctype_utf8.result: Auto merged mysql-test/r/innodb_mysql.result: Auto merged mysql-test/r/log_tables.result: Auto merged mysql-test/r/trigger.result: Auto merged mysql-test/r/view.result: Auto merged mysql-test/t/ctype_utf8.test: Auto merged mysql-test/t/im_daemon_life_cycle.imtest: Auto merged mysql-test/t/sp-error.test: Auto merged mysql-test/t/sp.test: Auto merged mysql-test/t/trigger.test: Auto merged mysql-test/t/view.test: Auto merged netware/BUILD/mwenv: Auto merged scripts/make_binary_distribution.sh: Auto merged sql/Makefile.am: Auto merged sql/handler.cc: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/log.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/sp.cc: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_delete.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_prepare.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_trigger.cc: Auto merged sql/sql_union.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_view.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/table.cc: Auto merged storage/innobase/handler/ha_innodb.cc: Auto merged tests/mysql_client_test.c: Auto merged include/my_time.h: manual merge. mysql-test/mysql-test-run.pl: manual merge. mysql-test/r/ps.result: manual merge. mysql-test/t/disabled.def: manual merge. mysql-test/t/ps.test: manual merge.
Diffstat (limited to 'sql/sql_union.cc')
-rw-r--r--sql/sql_union.cc15
1 files changed, 13 insertions, 2 deletions
diff --git a/sql/sql_union.cc b/sql/sql_union.cc
index cfaf21fa957..722a99eb2d1 100644
--- a/sql/sql_union.cc
+++ b/sql/sql_union.cc
@@ -694,7 +694,17 @@ bool st_select_lex_unit::change_result(select_subselect *result,
List<Item> *st_select_lex_unit::get_unit_column_types()
{
- bool is_union= test(first_select()->next_select());
+ SELECT_LEX *sl= first_select();
+ bool is_union= test(sl->next_select());
+ bool is_procedure= test(sl->join->procedure);
+
+ if (is_procedure)
+ {
+ /* Types for "SELECT * FROM t1 procedure analyse()"
+ are generated during execute */
+ return &sl->join->procedure_fields_list;
+ }
+
if (is_union)
{
@@ -702,7 +712,8 @@ List<Item> *st_select_lex_unit::get_unit_column_types()
/* Types are generated during prepare */
return &types;
}
- return &first_select()->item_list;
+
+ return &sl->item_list;
}
bool st_select_lex::cleanup()