diff options
author | unknown <sanja@montyprogram.com> | 2012-02-01 17:09:49 +0200 |
---|---|---|
committer | unknown <sanja@montyprogram.com> | 2012-02-01 17:09:49 +0200 |
commit | b4643d75fe065d92403817a1dd8785b198b6fdec (patch) | |
tree | e4f07d0fbce836002d58021cf33b750b1edf1275 /sql/item.cc | |
parent | 7ed15e6e50aec65560d8988fc5713f1f489b6616 (diff) | |
download | mariadb-git-b4643d75fe065d92403817a1dd8785b198b6fdec.tar.gz |
fix for LP BUG#921878.
Problem was in try to check/use Item_direct_ref of derived view when we have to use real Item_field under it.
Diffstat (limited to 'sql/item.cc')
-rw-r--r-- | sql/item.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sql/item.cc b/sql/item.cc index aaf9b0c2a12..b738d1f00da 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -9052,13 +9052,13 @@ void Item_type_holder::get_full_info(Item *item) DBUG_ASSERT((enum_set_typelib && get_real_type(item) == MYSQL_TYPE_NULL) || (!enum_set_typelib && - item->type() == Item::FIELD_ITEM && - (get_real_type(item) == MYSQL_TYPE_ENUM || - get_real_type(item) == MYSQL_TYPE_SET) && - ((Field_enum*)((Item_field *) item)->field)->typelib)); + item->real_item()->type() == Item::FIELD_ITEM && + (get_real_type(item->real_item()) == MYSQL_TYPE_ENUM || + get_real_type(item->real_item()) == MYSQL_TYPE_SET) && + ((Field_enum*)((Item_field *) item->real_item())->field)->typelib)); if (!enum_set_typelib) { - enum_set_typelib= ((Field_enum*)((Item_field *) item)->field)->typelib; + enum_set_typelib= ((Field_enum*)((Item_field *) item->real_item())->field)->typelib; } } } |