diff options
| -rw-r--r-- | gc/default/default.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gc/default/default.c b/gc/default/default.c index 0f07474b50..5bbdc1e026 100644 --- a/gc/default/default.c +++ b/gc/default/default.c @@ -9218,7 +9218,9 @@ gc_malloc_allocations(VALUE self) void rb_gc_impl_before_fork(void *objspace_ptr) { /* no-op */ } void rb_gc_impl_after_fork(void *objspace_ptr, rb_pid_t pid) { - rb_gc_ractor_newobj_cache_foreach(gc_ractor_newobj_cache_clear, NULL); + if (pid == 0) { /* child process */ + rb_gc_ractor_newobj_cache_foreach(gc_ractor_newobj_cache_clear, NULL); + } } VALUE rb_ident_hash_new_with_size(st_index_t size); |
