summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
authorsergefp@mysql.com <>2006-09-01 13:23:43 +0400
committersergefp@mysql.com <>2006-09-01 13:23:43 +0400
commit80cccd41aea09b26f76c74005ef6737781a5318f (patch)
tree810129f480963d677f8bdab92d41e2fcd2dd0bd6 /sql/sql_yacc.yy
parentf07937730ae1b103596b3de6b8e30ec656c26f56 (diff)
downloadmariadb-git-80cccd41aea09b26f76c74005ef6737781a5318f.tar.gz
BUG#21477 "memory overruns for certain kinds of subqueries":
make st_select_lex::setup_ref_array() take into account that Item_sum-descendant objects located within descendant SELECTs may be added into ref_pointer_array.
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index d2aca27c836..43204a33d70 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -8927,8 +8927,10 @@ subselect_end:
{
LEX *lex=Lex;
lex->pop_context();
+ SELECT_LEX *child= lex->current_select;
lex->current_select = lex->current_select->return_after_parsing();
lex->nest_level--;
+ lex->current_select->n_child_sum_items += child->n_sum_items;
};
/**************************************************************************