From b2674c1fd725b43adf51af7935c780359d70c2a4 Mon Sep 17 00:00:00 2001 From: Koichi Sasada Date: Fri, 5 Feb 2021 15:30:53 +0900 Subject: [PATCH] unblock thread is only for main ractor. other ractors should not have a unblock thread. This patch fixes 6f727853cee41195b67ee5d793c1ac23fe1a6ae0. --- thread.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/thread.c b/thread.c index f1d8c9ae27..e3689487ce 100644 --- a/thread.c +++ b/thread.c @@ -1659,8 +1659,8 @@ rb_nogvl(void *(*func)(void *), void *data1, ubf = ubf_select; data2 = th; } - else if (ubf && rb_ractor_living_thread_num(th->ractor) == 1) { - if (is_main_thread && flags & RB_NOGVL_UBF_ASYNC_SAFE) { + else if (ubf && rb_ractor_living_thread_num(th->ractor) == 1 && is_main_thread) { + if (flags & RB_NOGVL_UBF_ASYNC_SAFE) { vm->ubf_async_safe = 1; } else {