summaryrefslogtreecommitdiff
path: root/sql/sql_base.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2004-09-06 13:00:24 +0300
committerunknown <bell@sanja.is.com.ua>2004-09-06 13:00:24 +0300
commit77ee831d3d9230912136d7b91f027f48df84431a (patch)
treeb1c0219bf6f5857be815d6ae8e7d32b071352708 /sql/sql_base.cc
parent1230daf8f281bbb1ca07364b9a8c18ea4aa02a4d (diff)
downloadmariadb-git-77ee831d3d9230912136d7b91f027f48df84431a.tar.gz
fixed temporary table processing expresions of subqueries and removed wrong restrictions of field resolving (BUG#5326)
mysql-test/r/subselect.result: tests of fields resolving mysql-test/t/subselect.test: tests of fields resolving sql/item.cc: fixed fild resolving sql/item_subselect.cc: removed aneed call sql/sql_base.cc: fixed case whan we scan un-fixfielded fields sql/sql_select.cc: fixed temporary table processing expresions of subqueries
Diffstat (limited to 'sql/sql_base.cc')
-rw-r--r--sql/sql_base.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index ac5008717e6..f938847ce68 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -2142,8 +2142,12 @@ find_item_in_list(Item *find, List<Item> &items, uint *counter,
case sensitive.
In cases where they are not case sensitive, they are always in lower
case.
+
+ item_field->field_name and item_field->table_name can be 0x0 if
+ item is not fix fielded yet.
*/
- if (!my_strcasecmp(system_charset_info, item_field->field_name,
+ if (item_field->field_name && item_field->table_name &&
+ !my_strcasecmp(system_charset_info, item_field->field_name,
field_name) &&
!strcmp(item_field->table_name, table_name) &&
(!db_name || (item_field->db_name &&