diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-10-07 07:44:18 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-10-07 07:44:18 +0000 |
commit | a682b5324bedfeb346e486c8ffd3410d77b59f0c (patch) | |
tree | 3e2293505362822e133e0f2d53e8338acba3b15b | |
parent | 753450b7c4e4e3c8730c3337a72ab2cbed7b47cf (diff) |
* bignum.c (bigdivrem): bignum zero's len should not be 0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | bignum.c | 2 |
2 files changed, 5 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Mon Oct 7 16:43:07 2002 Yukihiro Matsumoto <matz@ruby-lang.org> + + * bignum.c (bigdivrem): bignum zero's len should not be 0. + Mon Oct 7 15:36:42 2002 Yukihiro Matsumoto <matz@ruby-lang.org> * bignum.c (bigdivmod): wrong condition check for Bignum zero. @@ -928,7 +928,7 @@ bigdivrem(x, y, divp, modp) if (modp) { /* just normalize remainder */ *modp = rb_big_clone(z); zds = BDIGITS(*modp); - while (ny-- && !zds[ny]); ++ny; + while (--ny && !zds[ny]); ++ny; if (dd) { t2 = 0; i = ny; while(i--) { |