summaryrefslogtreecommitdiff
path: root/sql/item_func.h
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-10-05 08:09:49 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2018-10-05 08:09:49 +0300
commit444c380ceb26895748ce50c50be3f839393ebfd7 (patch)
tree65b1fbf3b7caec3de48c1f76de4614a2d9793a8d /sql/item_func.h
parent55dd0776566000c5ea12e177df0c784b500ab7c1 (diff)
parent941ca92a2ca3990020b23bcc92e7ca98dcc8f814 (diff)
downloadmariadb-git-444c380ceb26895748ce50c50be3f839393ebfd7.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'sql/item_func.h')
-rw-r--r--sql/item_func.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/item_func.h b/sql/item_func.h
index 51929482b96..40012cfcbaa 100644
--- a/sql/item_func.h
+++ b/sql/item_func.h
@@ -404,7 +404,10 @@ public:
String *val_str(String*str);
my_decimal *val_decimal(my_decimal *decimal_value);
longlong val_int()
- { DBUG_ASSERT(fixed == 1); return (longlong) rint(val_real()); }
+ {
+ DBUG_ASSERT(fixed == 1);
+ return Converter_double_to_longlong(val_real(), unsigned_flag).result();
+ }
bool get_date(THD *thd, MYSQL_TIME *ltime, date_mode_t fuzzydate)
{ return get_date_from_real(thd, ltime, fuzzydate); }
const Type_handler *type_handler() const { return &type_handler_double; }
@@ -2292,7 +2295,8 @@ class Item_func_udf_float :public Item_udf_func
longlong val_int()
{
DBUG_ASSERT(fixed == 1);
- return (longlong) rint(Item_func_udf_float::val_real());
+ return Converter_double_to_longlong(Item_func_udf_float::val_real(),
+ unsigned_flag).result();
}
my_decimal *val_decimal(my_decimal *dec_buf)
{