summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorlars@mysql.com <>2005-07-12 18:31:05 +0200
committerlars@mysql.com <>2005-07-12 18:31:05 +0200
commit7d78f53e1c26525a5cff680d50789685dab82691 (patch)
tree5eb0dca4466ce086f33ec6998598060565ff1507 /sql
parentbdf0a22c71f0c5db9fafb883e74d5dce5086cfac (diff)
parent670428f6e63b0e3b32f0b006a27648da8260162c (diff)
downloadmariadb-git-7d78f53e1c26525a5cff680d50789685dab82691.tar.gz
Merge mysql.com:/home/bkroot/mysql-4.1
into mysql.com:/home/bk/b6987-mysql-4.1
Diffstat (limited to 'sql')
-rw-r--r--sql/item.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/item.cc b/sql/item.cc
index c96794ff482..3bdaf856f2a 100644
--- a/sql/item.cc
+++ b/sql/item.cc
@@ -3121,9 +3121,13 @@ void Item_type_holder::get_full_info(Item *item)
if (fld_type == MYSQL_TYPE_ENUM ||
fld_type == MYSQL_TYPE_SET)
{
+ if (item->type() == Item::SUM_FUNC_ITEM &&
+ (((Item_sum*)item)->sum_func() == Item_sum::MAX_FUNC ||
+ ((Item_sum*)item)->sum_func() == Item_sum::MIN_FUNC))
+ item = ((Item_sum*)item)->args[0];
/*
- We can have enum/set type after merging only if we have one enum/set
- field and number of NULL fields
+ We can have enum/set type after merging only if we have one enum|set
+ field (or MIN|MAX(enum|set field)) and number of NULL fields
*/
DBUG_ASSERT((enum_set_typelib &&
get_real_type(item) == MYSQL_TYPE_NULL) ||