summaryrefslogtreecommitdiff
path: root/sql/item_cmpfunc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/item_cmpfunc.h')
-rw-r--r--sql/item_cmpfunc.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h
index 340bf2bb2bf..a2b10eacc79 100644
--- a/sql/item_cmpfunc.h
+++ b/sql/item_cmpfunc.h
@@ -45,11 +45,8 @@ public:
int set_compare_func(Item_bool_func2 *owner, Item_result type);
inline int set_compare_func(Item_bool_func2 *owner_arg)
{
- Item_result ar= (*a)->result_as_longlong() && (*b)->const_item() ?
- INT_RESULT : (*a)->result_type();
- Item_result br= (*b)->result_as_longlong() && (*a)->const_item() ?
- INT_RESULT : (*b)->result_type();
- return set_compare_func(owner_arg, item_cmp_type(ar, br));
+ return set_compare_func(owner_arg, item_cmp_type((*a)->result_type(),
+ (*b)->result_type()));
}
inline int set_cmp_func(Item_bool_func2 *owner_arg,
Item **a1, Item **a2,
@@ -62,11 +59,9 @@ public:
inline int set_cmp_func(Item_bool_func2 *owner_arg,
Item **a1, Item **a2)
{
- Item_result ar= (*a1)->result_as_longlong() && (*a2)->const_item() ?
- INT_RESULT : (*a1)->result_type();
- Item_result br= (*a2)->result_as_longlong() && (*a1)->const_item() ?
- INT_RESULT : (*a2)->result_type();
- return set_cmp_func(owner_arg, a1, a2, item_cmp_type(ar, br));
+ return set_cmp_func(owner_arg, a1, a2,
+ item_cmp_type((*a1)->result_type(),
+ (*a2)->result_type()));
}
inline int compare() { return (this->*func)(); }