From ba090a46af56355d8c4a458f8000cceae26d1c4f Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 14 Jun 2018 11:25:12 +0900 Subject: Need to add a write barrier for ranges; fix #4042 Ranges are almost immutable but `initialize` and `initialize_copy` modify the receiver so that we need to add a write barrier. --- src/range.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src') diff --git a/src/range.c b/src/range.c index 0360b48ae..e45308d35 100644 --- a/src/range.c +++ b/src/range.c @@ -120,6 +120,7 @@ range_init(mrb_state *mrb, mrb_value range, mrb_value beg, mrb_value end, mrb_bo } r->edges->beg = beg; r->edges->end = end; + mrb_write_barrier(mrb, (struct RBasic*)r); } /* * call-seq: -- cgit v1.2.3