Merge pull request #5767 from dearblue/fiber-gc

Fix `SIGSEGV` caused by GC during fiber initialization
This commit is contained in:
Yukihiro "Matz" Matsumoto
2022-08-01 17:17:29 +09:00
committed by GitHub
+2 -4
View File
@@ -1020,13 +1020,11 @@ gc_gray_counts(mrb_state *mrb, mrb_gc *gc, struct RBasic *obj)
mrb_callinfo *ci;
if (!c || c->status == MRB_FIBER_TERMINATED) break;
if (!c->ci) break;
/* mark stack */
i = c->ci->stack - c->stbase;
if (c->ci) {
i += mrb_ci_nregs(c->ci);
}
i += mrb_ci_nregs(c->ci);
if (c->stbase + i > c->stend) i = c->stend - c->stbase;
children += i;