aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-07-01 13:34:13 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-07-01 13:34:13 +0000
commit8bab1aff2c6b9cdb5f840691f98fc078ce9b7cb9 (patch)
tree36ad28bbfce43d75f30095739bb395331f5384df
parente12c43ee8c92ba028ab53b9b9d76bf919bd0f563 (diff)
downloadruby-8bab1aff2c6b9cdb5f840691f98fc078ce9b7cb9.tar.gz
* numeric.c (rb_num2ulong): fix the lower limit for float.
[ruby-dev:41361] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--numeric.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index c1853c37c3..f43646a6e5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Jul 1 22:15:01 2010 Tanaka Akira <akr@fsij.org>
+
+ * numeric.c (rb_num2ulong): fix the lower limit for float.
+ [ruby-dev:41361]
+
Thu Jul 1 21:37:11 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): integrated with
diff --git a/numeric.c b/numeric.c
index 9ff193c0d5..993e1c46cf 100644
--- a/numeric.c
+++ b/numeric.c
@@ -1729,7 +1729,7 @@ rb_num2ulong(VALUE val)
switch (TYPE(val)) {
case T_FLOAT:
- if (RFLOAT_VALUE(val) <= (double)LONG_MAX
+ if (RFLOAT_VALUE(val) <= (double)ULONG_MAX
&& RFLOAT_VALUE(val) >= (double)LONG_MIN) {
return (VALUE)RFLOAT_VALUE(val);
}