diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/item.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sql/item.h b/sql/item.h index e683cda5786..f55707cfc32 100644 --- a/sql/item.h +++ b/sql/item.h @@ -703,6 +703,14 @@ public: longlong val_int() { DBUG_ASSERT(fixed == 1); + if (value <= (double) LONGLONG_MIN) + { + return LONGLONG_MIN; + } + else if (value >= (double) (ulonglong) LONGLONG_MAX) + { + return LONGLONG_MAX; + } return (longlong) (value+(value > 0 ? 0.5 : -0.5)); } String *val_str(String*); |