diff --git a/ChangeLog b/ChangeLog index 2986136c77..a583d5ca74 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Jun 6 19:55:21 2010 Tanaka Akira + + * array.c (rb_ary_product): clear uninitialized elements in temporary + array. + Sun Jun 6 12:31:57 2010 Narihiro Nakamura * gc.c: set_heaps_increment is not diff --git a/array.c b/array.c index 35335f5437..04c244a385 100644 --- a/array.c +++ b/array.c @@ -4308,6 +4308,7 @@ rb_ary_product(int argc, VALUE *argv, VALUE ary) /* initialize the arrays of arrays */ ARY_SET_LEN(t0, n); arrays[0] = ary; + for (i = 1; i < n; i++) arrays[i] = Qnil; for (i = 1; i < n; i++) arrays[i] = to_ary(argv[i-1]); /* initialize the counters for the arrays */