diff options
author | davidflanagan <davidflanagan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-10-26 05:52:16 +0000 |
---|---|---|
committer | davidflanagan <davidflanagan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-10-26 05:52:16 +0000 |
commit | 27b35eddd6ee9f5844c636f8201f09281e32d9bb (patch) | |
tree | d9f9e8c930335ea47a3a0053911403c5eec7e455 | |
parent | d520759f6507177cc2b5b74e026ba884b99ddded (diff) | |
download | ruby-27b35eddd6ee9f5844c636f8201f09281e32d9bb.tar.gz |
array.c: raise IndexError for negative length in rb_ary_fill
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-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); |