mvadkert / rpms / ruby

Forked from rpms/ruby 6 years ago
Clone
2061c5b
diff -pruN ruby-1.8.6-p230.orig/array.c ruby-1.8.6-p230/array.c
2061c5b
--- ruby-1.8.6-p230.orig/array.c	2008-06-20 15:53:16.000000000 +0900
2061c5b
+++ ruby-1.8.6-p230/array.c	2008-06-30 11:33:00.000000000 +0900
2061c5b
@@ -2272,10 +2272,10 @@ rb_ary_fill(argc, argv, ary)
2061c5b
 	break;
2061c5b
     }
2061c5b
     rb_ary_modify(ary);
2061c5b
-    end = beg + len;
2061c5b
-    if (end < 0) {
2061c5b
+    if (len > ARY_MAX_SIZE - beg) {
2061c5b
 	rb_raise(rb_eArgError, "argument too big");
2061c5b
     }
2061c5b
+    end = beg + len;
2061c5b
     if (end > RARRAY(ary)->len) {
2061c5b
 	if (end >= RARRAY(ary)->aux.capa) {
2061c5b
 	    REALLOC_N(RARRAY(ary)->ptr, VALUE, end);