summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
Diffstat (limited to 'object.c')
-rw-r--r--object.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/object.c b/object.c
index 9ec96687e9..21779401fb 100644
--- a/object.c
+++ b/object.c
@@ -2747,11 +2747,8 @@ rb_convert_to_integer(VALUE val, int base)
VALUE tmp;
if (RB_FLOAT_TYPE_P(val)) {
- double f;
if (base != 0) goto arg_error;
- f = RFLOAT_VALUE(val);
- if (FIXABLE(f)) return LONG2FIX((long)f);
- return rb_dbl2big(f);
+ return rb_dbl2ival(RFLOAT_VALUE(val));
}
else if (RB_INTEGER_TYPE_P(val)) {
if (base != 0) goto arg_error;