diff --git a/ChangeLog b/ChangeLog index 549641f3c6..1254a3aaec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Nov 4 13:03:00 2016 Kenta Murata + + * numeric.c (rb_int_digits): Fix exception message + Fri Nov 4 10:51:16 2016 Nobuyoshi Nakada * ext/pathname/pathname.c (path_hash): fix unnormalized Fixnum diff --git a/numeric.c b/numeric.c index d317d046c6..00a1050f43 100644 --- a/numeric.c +++ b/numeric.c @@ -4680,7 +4680,9 @@ rb_int_digits(int argc, VALUE *argv, VALUE num) return rb_int_digits_bigbase(num, base_value); base = FIX2LONG(base_value); - if (base < 2) + if (base < 0) + rb_raise(rb_eArgError, "negative radix"); + else if (base < 2) rb_raise(rb_eArgError, "invalid radix %ld", base); } else