mirror of
https://github.com/MariaDB/server.git
synced 2026-04-28 11:15:33 +02:00
don't cast random items to Item_result_field*
do it only for items that inherit from Item_result_field*
This commit is contained in:
parent
d3b2228fd8
commit
e91fd8783a
1 changed files with 9 additions and 9 deletions
|
|
@ -16281,27 +16281,27 @@ Field *create_tmp_field(THD *thd, TABLE *table,Item *item, Item::Type type,
|
|||
|
||||
/* Fall through */
|
||||
case Item::COND_ITEM:
|
||||
case Item::SUBSELECT_ITEM:
|
||||
case Item::REF_ITEM:
|
||||
case Item::EXPR_CACHE_ITEM:
|
||||
if (make_copy_field)
|
||||
{
|
||||
DBUG_ASSERT(((Item_result_field*)item)->result_field);
|
||||
*from_field= ((Item_result_field*)item)->result_field;
|
||||
}
|
||||
/* Fall through */
|
||||
case Item::FIELD_AVG_ITEM:
|
||||
case Item::FIELD_STD_ITEM:
|
||||
case Item::SUBSELECT_ITEM:
|
||||
/* The following can only happen with 'CREATE TABLE ... SELECT' */
|
||||
case Item::PROC_ITEM:
|
||||
case Item::INT_ITEM:
|
||||
case Item::REAL_ITEM:
|
||||
case Item::DECIMAL_ITEM:
|
||||
case Item::STRING_ITEM:
|
||||
case Item::DATE_ITEM:
|
||||
case Item::REF_ITEM:
|
||||
case Item::NULL_ITEM:
|
||||
case Item::VARBIN_ITEM:
|
||||
case Item::CACHE_ITEM:
|
||||
case Item::EXPR_CACHE_ITEM:
|
||||
case Item::PARAM_ITEM:
|
||||
if (make_copy_field)
|
||||
{
|
||||
DBUG_ASSERT(((Item_result_field*)item)->result_field);
|
||||
*from_field= ((Item_result_field*)item)->result_field;
|
||||
}
|
||||
return create_tmp_field_from_item(thd, item, table,
|
||||
(make_copy_field ? 0 : copy_func),
|
||||
modify_item);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue