summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorbell@sanja.is.com.ua <>2003-07-02 13:12:18 +0300
committerbell@sanja.is.com.ua <>2003-07-02 13:12:18 +0300
commit2ae8a00b2a0e4bc11fb70f0161be34f1573a2f55 (patch)
treedccd7660a069e46152b806a02d2f37652155410a /sql/item_subselect.cc
parent5eaaf8e732b860195f0ffdf3f82d2064ef171b84 (diff)
downloadmariadb-git-2ae8a00b2a0e4bc11fb70f0161be34f1573a2f55.tar.gz
Item tree iterator
fixed dependence of items from reduced subquery (SCRUM)
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r--sql/item_subselect.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc
index 01cebb5fc60..f29ac3b3c9c 100644
--- a/sql/item_subselect.cc
+++ b/sql/item_subselect.cc
@@ -193,7 +193,12 @@ Item_singlerow_subselect::select_transformer(JOIN *join)
ER_SELECT_REDUCED, warn_buff);
}
substitution= select_lex->item_list.head();
-
+ /*
+ as far as we moved content to upper leven, field which depend of
+ 'upper' select is not really dependent => we remove this dependence
+ */
+ substitution->walk(&Item::remove_dependence_processor,
+ (byte *) select_lex->outer_select());
if (select_lex->where || select_lex->having)
{
Item *cond;