summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-06-22 02:05:14 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-06-22 02:05:14 +0900
commitb200c7475ae65abbbea09fcf91c38a1c8971da1c (patch)
treeb4ae29afc85aad3c9afe305570636418ea636be0 /src
parentc41e262667faa0edea31e47d133276c1dc72ef06 (diff)
downloadmruby-b200c7475ae65abbbea09fcf91c38a1c8971da1c.tar.gz
mruby-b200c7475ae65abbbea09fcf91c38a1c8971da1c.zip
No need to mark stacks of terminated fibers; fix #3720
Diffstat (limited to 'src')
-rw-r--r--src/gc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gc.c b/src/gc.c
index da2fe3800..134b818ee 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -579,6 +579,8 @@ mark_context(mrb_state *mrb, struct mrb_context *c)
int i;
mrb_callinfo *ci;
+ if (c->status == MRB_FIBER_TERMINATED) return;
+
/* mark VM stack */
mark_context_stack(mrb, c);