diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-08-07 11:08:03 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-08-07 11:08:03 +0000 |
commit | fe6273975eb7a8b8bbc48ef62dc74b7a1a8c10e8 (patch) | |
tree | 5d5592fc132f2af97ffab1c0e323c19c6d7e748b /bignum.c | |
parent | ff84827eb6022ed208fb21a8e41ba30dd713ea2f (diff) | |
download | ruby-fe6273975eb7a8b8bbc48ef62dc74b7a1a8c10e8.tar.gz |
* bignum.c (rb_big_odd_p): Check the bignum length.
(rb_big_even_p): Ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bignum.c')
-rw-r--r-- | bignum.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -6559,7 +6559,7 @@ rb_big_size(VALUE big) static VALUE rb_big_odd_p(VALUE num) { - if (BDIGITS(num)[0] & 1) { + if (RBIGNUM_LEN(num) != 0 && BDIGITS(num)[0] & 1) { return Qtrue; } return Qfalse; @@ -6575,7 +6575,7 @@ rb_big_odd_p(VALUE num) static VALUE rb_big_even_p(VALUE num) { - if (BDIGITS(num)[0] & 1) { + if (RBIGNUM_LEN(num) != 0 && BDIGITS(num)[0] & 1) { return Qfalse; } return Qtrue; |