summaryrefslogtreecommitdiff
path: root/sql/item_sum.h
diff options
context:
space:
mode:
authorunknown <igor@rurik.mysql.com>2005-12-02 20:42:36 -0800
committerunknown <igor@rurik.mysql.com>2005-12-02 20:42:36 -0800
commite324da302f39998d654b5b112a0342cad0427e35 (patch)
treea7f18b069781ad44463394d0a6a6a4d7f37b560a /sql/item_sum.h
parent448327afb42e7b4d98ebd231ff7482ba59f0e921 (diff)
parent2883e932ef55268d90c57f926d08df7b9a068f1a (diff)
downloadmariadb-git-e324da302f39998d654b5b112a0342cad0427e35.tar.gz
Merge rurik.mysql.com:/home/igor/mysql-5.0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-2 sql/item.cc: Auto merged sql/item.h: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_func.cc: Auto merged sql/item_strfunc.cc: Auto merged sql/item_sum.cc: Auto merged sql/item_sum.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_lex.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'sql/item_sum.h')
-rw-r--r--sql/item_sum.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/sql/item_sum.h b/sql/item_sum.h
index 6bc4af1b836..eddc3ed8446 100644
--- a/sql/item_sum.h
+++ b/sql/item_sum.h
@@ -330,7 +330,7 @@ public:
longlong val_int()
{
DBUG_ASSERT(fixed == 1);
- return (longlong) val_real(); /* Real as default */
+ return (longlong) rint(val_real()); /* Real as default */
}
String *val_str(String*str);
my_decimal *val_decimal(my_decimal *);
@@ -596,7 +596,7 @@ public:
bool add();
double val_real();
// In SPs we might force the "wrong" type with select into a declare variable
- longlong val_int() { return (longlong)val_real(); }
+ longlong val_int() { return (longlong) rint(val_real()); }
my_decimal *val_decimal(my_decimal *);
String *val_str(String *str);
void reset_field();
@@ -625,7 +625,7 @@ public:
enum Type type() const {return FIELD_VARIANCE_ITEM; }
double val_real();
longlong val_int()
- { /* can't be fix_fields()ed */ return (longlong) val_real(); }
+ { /* can't be fix_fields()ed */ return (longlong) rint(val_real()); }
String *val_str(String*);
my_decimal *val_decimal(my_decimal *);
bool is_null() { (void) val_int(); return null_value; }
@@ -903,7 +903,7 @@ class Item_sum_udf_float :public Item_udf_sum
longlong val_int()
{
DBUG_ASSERT(fixed == 1);
- return (longlong) Item_sum_udf_float::val_real();
+ return (longlong) rint(Item_sum_udf_float::val_real());
}
double val_real();
String *val_str(String*str);