diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | array.c | 7 |
2 files changed, 6 insertions, 5 deletions
@@ -1,3 +1,7 @@ +Thu Jul 18 20:44:51 2013 Masaki Matsushita <glass.saga@gmail.com> + + * array.c (rb_ary_fill): use memfill(). + Thu Jul 18 20:35:14 2013 Benoit Daloze <eregontp@gmail.com> * array.c (rb_ary_count): check length to avoid SEGV @@ -3327,7 +3327,7 @@ rb_ary_fill(int argc, VALUE *argv, VALUE ary) { VALUE item, arg1, arg2; long beg = 0, end = 0, len = 0; - VALUE *p, *pend; + VALUE *p; int block_p = FALSE; if (rb_block_given_p()) { @@ -3385,10 +3385,7 @@ rb_ary_fill(int argc, VALUE *argv, VALUE ary) } else { p = RARRAY_PTR(ary) + beg; - pend = p + len; - while (p < pend) { - *p++ = item; - } + memfill(p, len, item); } return ary; } |