mirror of
https://github.com/MariaDB/server.git
synced 2025-06-13 13:01:51 +03:00
revision of fix_fields() calls (BUG2838)
mysql-test/r/subselect.result: test suite for BUG#2838 mysql-test/t/subselect.test: test suite for BUG#2838 sql/item.cc: revision of fix_fields() calls removed unnecessary variabl, and used correct last parameter of fix_fields() sql/item_cmpfunc.cc: revision of fix_fields() calls (BUG#2838) sql/item_func.cc: revision of fix_fields() calls sql/item_row.cc: changed for efficience (and to be similar for Item_func::fix_fields) sql/item_subselect.cc: fixed last arguments for fix_fields call sql/item_sum.cc: layout fixed revision of fix_fields() calls sql/log_event.cc: revision of fix_fields() calls sql/set_var.cc: revision of fix_fields() calls sql/sql_base.cc: revision of fix_fields() calls sql/sql_class.cc: revision of fix_fields() calls sql/sql_handler.cc: revision of fix_fields() calls
This commit is contained in:
@ -207,11 +207,13 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables,
|
||||
MYF(0),keyinfo->key_parts);
|
||||
goto err;
|
||||
}
|
||||
List_iterator_fast<Item> it_ke(*key_expr);
|
||||
List_iterator<Item> it_ke(*key_expr);
|
||||
Item *item;
|
||||
for (key_len=0 ; (item=it_ke++) ; key_part++)
|
||||
{
|
||||
if (item->fix_fields(thd, tables, &item))
|
||||
// 'item' can be changed by fix_fields() call
|
||||
if (item->fix_fields(thd, tables, it_ke.ref()) ||
|
||||
(item= *it_ke.ref())->check_cols(1))
|
||||
goto err;
|
||||
if (item->used_tables() & ~RAND_TABLE_BIT)
|
||||
{
|
||||
|
Reference in New Issue
Block a user