From 88bb1a672c49746972f4b15410fa92e9d237c43d Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Thu, 3 Dec 2020 14:09:18 -0500 Subject: Skip repeated scan of object during compaction --- gc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gc.c') diff --git a/gc.c b/gc.c index 306ad0e257..c5ba3e7436 100644 --- a/gc.c +++ b/gc.c @@ -4484,7 +4484,7 @@ try_move(rb_objspace_t *objspace, rb_heap_t *heap, struct heap_page *sweep_page, objspace->rcompactor.total_moved++; gc_move(objspace, (VALUE)p, dest); gc_pin(objspace, (VALUE)p); - heap->compact_cursor_index = i; + heap->compact_cursor_index = i + 1; if (from_freelist) { FL_SET((VALUE)p, FL_FROM_FREELIST); } -- cgit v1.2.3