diff --git a/array.c b/array.c index 4b5e84e142..ae1f8c1fff 100644 --- a/array.c +++ b/array.c @@ -412,9 +412,9 @@ ary_new(VALUE klass, long capa) ARY_SET_PTR(ary, ptr); ARY_SET_CAPA(ary, capa); ARY_SET_HEAP_LEN(ary, 0); - } else { + } + else { ary = ary_alloc(klass); - } return ary; diff --git a/gc.c b/gc.c index cbad1d72a2..f97a74e2dc 100644 --- a/gc.c +++ b/gc.c @@ -2156,9 +2156,9 @@ slot_sweep_body(rb_objspace_t *objspace, struct heaps_slot *sweep_slot, const in bits[BITMAP_INDEX(p)] |= BITMAP_BIT(p)-1; bits[BITMAP_INDEX(pend)] |= ~(BITMAP_BIT(pend) - 1); - for(i=0;i