From 06312377adc62ea1c82b5574749ee3704a1e4e9f Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Thu, 31 Jul 2025 14:38:16 -0400 Subject: [PATCH] Make Ractor::Selector write-barrier protected --- ractor_sync.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ractor_sync.c b/ractor_sync.c index a3ed38295b..057448c5f5 100644 --- a/ractor_sync.c +++ b/ractor_sync.c @@ -1273,7 +1273,7 @@ static const rb_data_type_t ractor_selector_data_type = { ractor_selector_memsize, NULL, // update }, - 0, 0, RUBY_TYPED_FREE_IMMEDIATELY, + 0, 0, RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_WB_PROTECTED, }; static struct ractor_selector * @@ -1318,6 +1318,8 @@ ractor_selector_add(VALUE selv, VALUE rpv) } st_insert(s->ports, (st_data_t)rpv, (st_data_t)rp); + RB_OBJ_WRITTEN(selv, Qundef, rpv); + return selv; }