diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | array.c | 1 |
2 files changed, 4 insertions, 0 deletions
@@ -1,3 +1,6 @@ +Fri Oct 26 05:48:57 UTC 2007 David Flanagan <davidflanagan@ruby-lang.org> + * array.c: raise IndexError for negative length in rb_ary_fill + Wed Oct 25 07:12:03 2007 James Edward Gray II <jeg2@ruby-lang.org> * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in @@ -2127,6 +2127,7 @@ rb_ary_fill(int argc, VALUE *argv, VALUE ary) if (beg < 0) beg = 0; } len = NIL_P(arg2) ? RARRAY_LEN(ary) - beg : NUM2LONG(arg2); + if (len < 0) rb_raise(rb_eIndexError, "negative length (%ld)", len); break; } rb_ary_modify(ary); |