summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorunknown <sanja@hasky.mysql.fi>2005-08-13 11:15:17 +0300
committerunknown <sanja@hasky.mysql.fi>2005-08-13 11:15:17 +0300
commit5afacbab5192b3a8967006fb914c42a8e47e4900 (patch)
treef1a045a2723333febc196939dc28d104e7cea29d /sql/item_subselect.cc
parentad888850c0f7b754a31e58c5a6ad37cb62180716 (diff)
downloadmariadb-git-5afacbab5192b3a8967006fb914c42a8e47e4900.tar.gz
item_subselect.cc:
postmerge fix subselect.result: new 5.0 result (postmerge) mysql-test/r/subselect.result: new 5.0 result (postmerge) sql/item_subselect.cc: postmerge fix
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r--sql/item_subselect.cc42
1 files changed, 25 insertions, 17 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc
index 1eddb36b34c..a5985a6c4a9 100644
--- a/sql/item_subselect.cc
+++ b/sql/item_subselect.cc
@@ -1093,21 +1093,24 @@ Item_in_subselect::row_value_transformer(JOIN *join)
DBUG_RETURN(RES_ERROR);
Item *item_eq=
new Item_func_eq(new
- Item_direct_ref((*optimizer->get_cache())->
+ Item_direct_ref(&select_lex->context,
+ (*optimizer->get_cache())->
addr(i),
(char *)"<no matter>",
(char *)in_left_expr_name),
new
- Item_direct_ref(select_lex->ref_pointer_array + i,
+ Item_direct_ref(&select_lex->context,
+ select_lex->ref_pointer_array + i,
(char *)"<no matter>",
(char *)"<list ref>")
);
Item *item_isnull=
new Item_func_isnull(new
- Item_direct_ref( select_lex->
- ref_pointer_array+i,
- (char *)"<no matter>",
- (char *)"<list ref>")
+ Item_direct_ref(&select_lex->context,
+ select_lex->
+ ref_pointer_array+i,
+ (char *)"<no matter>",
+ (char *)"<list ref>")
);
having_item=
and_items(having_item,
@@ -1117,7 +1120,8 @@ Item_in_subselect::row_value_transformer(JOIN *join)
new
Item_is_not_null_test(this,
new
- Item_direct_ref(select_lex->
+ Item_direct_ref(&select_lex->context,
+ select_lex->
ref_pointer_array + i,
(char *)"<no matter>",
(char *)"<list ref>")
@@ -1157,15 +1161,17 @@ Item_in_subselect::row_value_transformer(JOIN *join)
DBUG_RETURN(RES_ERROR);
item=
new Item_func_eq(new
- Item_direct_ref((*optimizer->get_cache())->
+ Item_direct_ref(&select_lex->context,
+ (*optimizer->get_cache())->
addr(i),
(char *)"<no matter>",
(char *)in_left_expr_name),
new
- Item_direct_ref( select_lex->
- ref_pointer_array+i,
- (char *)"<no matter>",
- (char *)"<list ref>")
+ Item_direct_ref(&select_lex->context,
+ select_lex->
+ ref_pointer_array+i,
+ (char *)"<no matter>",
+ (char *)"<list ref>")
);
if (!abort_on_null)
{
@@ -1174,7 +1180,8 @@ Item_in_subselect::row_value_transformer(JOIN *join)
new
Item_is_not_null_test(this,
new
- Item_direct_ref(select_lex->
+ Item_direct_ref(&select_lex->context,
+ select_lex->
ref_pointer_array + i,
(char *)"<no matter>",
(char *)"<list ref>")
@@ -1182,10 +1189,11 @@ Item_in_subselect::row_value_transformer(JOIN *join)
);
item_isnull= new
Item_func_isnull(new
- Item_direct_ref( select_lex->
- ref_pointer_array+i,
- (char *)"<no matter>",
- (char *)"<list ref>")
+ Item_direct_ref(&select_lex->context,
+ select_lex->
+ ref_pointer_array+i,
+ (char *)"<no matter>",
+ (char *)"<list ref>")
);
item= new Item_cond_or(item, item_isnull);