summaryrefslogtreecommitdiff
path: root/numeric.c
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-07-11 06:19:39 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-07-11 06:19:39 +0000
commitd7080856a4099835f4fe688cbcbf09409bba2c17 (patch)
treebe3a4afb9d1c4f000b6f789deb7ec05039f4e373 /numeric.c
parent93b59e38a2bac0996d98e7a8c9b5089f2dd32270 (diff)
* numeric.c (rb_num2ull): use FIX2LONG instead of FIX2ULONG. see
rb_num2ulong(). fixed the problem of ObjectSpace._id2ref of IL32LLP64 platforms, introduced at r32433. backported r32512 from trunk. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@32514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'numeric.c')
-rw-r--r--numeric.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/numeric.c b/numeric.c
index 32a1a75289..272bbd1e76 100644
--- a/numeric.c
+++ b/numeric.c
@@ -1981,7 +1981,7 @@ rb_num2ull(VALUE val)
rb_raise(rb_eTypeError, "no implicit conversion from nil");
case T_FIXNUM:
- return (LONG_LONG)FIX2ULONG(val);
+ return (LONG_LONG)FIX2LONG(val); /* this is FIX2LONG, inteneded */
case T_FLOAT:
if (RFLOAT_VALUE(val) < ULLONG_MAX_PLUS_ONE