diff options
author | unknown <sanja@hasky.mysql.fi> | 2005-08-13 11:15:17 +0300 |
---|---|---|
committer | unknown <sanja@hasky.mysql.fi> | 2005-08-13 11:15:17 +0300 |
commit | 5afacbab5192b3a8967006fb914c42a8e47e4900 (patch) | |
tree | f1a045a2723333febc196939dc28d104e7cea29d /sql/item_subselect.cc | |
parent | ad888850c0f7b754a31e58c5a6ad37cb62180716 (diff) | |
download | mariadb-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.cc | 42 |
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); |