diff options
| author | pyama86 <[email protected]> | 2018-08-06 18:15:00 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2018-08-25 09:17:46 +0900 |
| commit | 821135e2df838a2088ffca501403c08b21d9a8cf (patch) | |
| tree | 18b309c12eaa8d0c18bbf5b73bb46ecf364fb29e | |
| parent | 49d9fb8f41eff5e7d505f4be2f9d10f78188c97c (diff) | |
| download | mruby-821135e2df838a2088ffca501403c08b21d9a8cf.tar.gz mruby-821135e2df838a2088ffca501403c08b21d9a8cf.zip | |
irep is released when Fiber is terminated
| -rw-r--r-- | src/gc.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -965,9 +965,11 @@ gc_gray_mark(mrb_state *mrb, mrb_gc *gc, struct RBasic *obj) size_t i; mrb_callinfo *ci; - if (!c) break; + if (!c || c->status == MRB_FIBER_TERMINATED) break; + /* mark stack */ i = c->stack - c->stbase; + if (c->ci) { i += ci_nregs(c->ci); } |
