Permalink
Browse files

Revert 01f7825; fix #3650

Redundant `mark_context() is far better than crashes.
  • Loading branch information...
matz committed May 25, 2017
1 parent ac442bc commit f75f506181d632c1abcd78e6c1330ac78ff4955b
Showing with 4 additions and 4 deletions.
  1. +4 −4 src/gc.c
View
@@ -595,8 +595,8 @@ mark_context(mrb_state *mrb, struct mrb_context *c)
}
/* mark fibers */
mrb_gc_mark(mrb, (struct RBasic*)c->fib);
if (c->prev && c->prev->fib) {
mrb_gc_mark(mrb, (struct RBasic*)c->prev->fib);
if (c->prev) {
mark_context(mrb, c->prev);
}
}
@@ -878,9 +878,9 @@ root_scan_phase(mrb_state *mrb, mrb_gc *gc)
mrb_gc_mark(mrb, (struct RBasic*)mrb->arena_err);
#endif
mark_context(mrb, mrb->root_c);
mark_context(mrb, mrb->c);
if (mrb->root_c != mrb->c) {
mark_context(mrb, mrb->c);
mark_context(mrb, mrb->root_c);
}
}

0 comments on commit f75f506

Please sign in to comment.