summaryrefslogtreecommitdiff
path: root/sql/sql_view.cc
diff options
context:
space:
mode:
authorunknown <sanja@hasky.mysql.fi>2005-08-13 17:06:30 +0300
committerunknown <sanja@hasky.mysql.fi>2005-08-13 17:06:30 +0300
commit7b91cd9a5866106d8f8c39c03302a59ea18b30ee (patch)
treea85b9e322721bbc943fedaab2ede3c38a4bdff88 /sql/sql_view.cc
parent6ff38ce778a52d4117a12acb2eed5cc0b5213e8a (diff)
downloadmariadb-git-7b91cd9a5866106d8f8c39c03302a59ea18b30ee.tar.gz
table.cc:
remove unneeded multitable_view assignment sql_view.cc: fix potential memorry overrun in ref_array asssign multitable_view in time of view creation (BUG#12569) sql/sql_view.cc: fix potential memorry overrun in ref_array asssign multitable_view in time of view creation sql/table.cc: remove unneeded multitable_view assignment
Diffstat (limited to 'sql/sql_view.cc')
-rw-r--r--sql/sql_view.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/sql/sql_view.cc b/sql/sql_view.cc
index a910cdb2fbc..c958185b622 100644
--- a/sql/sql_view.cc
+++ b/sql/sql_view.cc
@@ -844,6 +844,9 @@ mysql_make_view(File_parser *parser, TABLE_LIST *table)
view_tables);
lex->select_lex.context.outer_context= 0;
lex->select_lex.context.select_lex= table->select_lex;
+ lex->select_lex.select_n_having_items+=
+ table->select_lex->select_n_having_items;
+
/* do not check privileges & hide errors for view underlyings */
for (SELECT_LEX *sl= lex->all_selects_list;
sl;
@@ -864,7 +867,11 @@ mysql_make_view(File_parser *parser, TABLE_LIST *table)
{
if (view_tables->next_local)
+ {
table->multitable_view= TRUE;
+ if (table->belong_to_view)
+ table->belong_to_view->multitable_view= TRUE;
+ }
/* make nested join structure for view tables */
NESTED_JOIN *nested_join;
if (!(nested_join= table->nested_join=