diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-20 13:52:19 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-20 13:52:19 +0000 |
commit | 7e36326c06a40dbe4900883cd180255e3beaa2e5 (patch) | |
tree | d4196d8d779ef0f4f36f296bedfdb4462592fb05 | |
parent | 94e5fdf3366e4e79924c060dbb1218ed75518dde (diff) | |
download | ruby-7e36326c06a40dbe4900883cd180255e3beaa2e5.tar.gz |
* bignum.c (bignorm): Don't call bigtrunc if the result is a fixnum.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | bignum.c | 4 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Thu Jun 20 22:49:27 2013 Tanaka Akira <akr@fsij.org> + + * bignum.c (bignorm): Don't call bigtrunc if the result is a fixnum. + Thu Jun 20 22:29:42 2013 Tanaka Akira <akr@fsij.org> * bignum.c (rb_uint2big): Refactored. @@ -322,7 +322,9 @@ static VALUE bignorm(VALUE x) { if (RB_TYPE_P(x, T_BIGNUM)) { - x = bigfixize(bigtrunc(x)); + x = bigfixize(x); + if (!FIXNUM_P(x)) + bigtrunc(x); } return x; } |