From 3620cc674cf87a7a0e242679084ac91eb9a98511 Mon Sep 17 00:00:00 2001 From: Narihiro Nakamura Date: Wed, 16 Jan 2013 16:01:40 +0900 Subject: mrb_field_write_barrier paints also gray in the major collector. These objects will be traversed after a minor collect cycle. --- src/gc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/gc.c b/src/gc.c index d84f44377..66f2bf08d 100644 --- a/src/gc.c +++ b/src/gc.c @@ -983,7 +983,7 @@ mrb_field_write_barrier(mrb_state *mrb, struct RBasic *obj, struct RBasic *value gc_assert(!is_dead(mrb, value) && !is_dead(mrb, obj)); gc_assert(is_generational(mrb) || mrb->gc_state != GC_STATE_NONE); - if (is_minor_gc(mrb) || mrb->gc_state == GC_STATE_MARK) { + if (is_generational(mrb) || mrb->gc_state == GC_STATE_MARK) { add_gray_list(mrb, value); } else { -- cgit v1.2.3