summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorunknown <sanja@montyprogram.com>2012-09-20 12:48:59 +0300
committerunknown <sanja@montyprogram.com>2012-09-20 12:48:59 +0300
commit792efd59bce2413191d5620c6f0815e21f18b628 (patch)
treec4f18f3e6ab1dc978532f54e47fbf3523ef6b65f /sql/item_subselect.cc
parent0bc89929ef5ac431e5a8b64d30e1f5cdb25aedcc (diff)
downloadmariadb-git-792efd59bce2413191d5620c6f0815e21f18b628.tar.gz
MDEV-521 fix.
After pullout item during single row subselect transformation it should be fixed properly.
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r--sql/item_subselect.cc6
1 files changed, 2 insertions, 4 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc
index c86deecb813..6fc1a591594 100644
--- a/sql/item_subselect.cc
+++ b/sql/item_subselect.cc
@@ -1007,11 +1007,9 @@ Item_singlerow_subselect::select_transformer(JOIN *join)
}
substitution= select_lex->item_list.head();
/*
- as far as we moved content to upper level, field which depend of
- 'upper' select is not really dependent => we remove this dependence
+ as far as we moved content to upper level we have to fix dependences & Co
*/
- substitution->walk(&Item::remove_dependence_processor, 0,
- (uchar *) select_lex->outer_select());
+ substitution->fix_after_pullout(select_lex->outer_select(), &substitution);
}
DBUG_RETURN(false);
}