diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2018-11-19 09:49:20 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2018-11-19 09:49:20 +0900 |
| commit | cab6b0f39b77098425b1c3c80e8e1d193d5882c8 (patch) | |
| tree | b9f812876788c662a5979332eb695868bc96c499 /src | |
| parent | 25d390d6ccf3da7a853ddd8272dd318ecadca316 (diff) | |
| download | mruby-cab6b0f39b77098425b1c3c80e8e1d193d5882c8.tar.gz mruby-cab6b0f39b77098425b1c3c80e8e1d193d5882c8.zip | |
Protect Fiber from GC in `ecall()`; fix #4104
Diffstat (limited to 'src')
| -rw-r--r-- | src/vm.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -364,6 +364,9 @@ ecall(mrb_state *mrb) if (exc) { mrb_gc_protect(mrb, mrb_obj_value(exc)); } + if (mrb->c->fib) { + mrb_gc_protect(mrb, mrb_obj_value(mrb->c->fib)); + } mrb_run(mrb, p, env->stack[0]); mrb->c = c; c->ci = c->cibase + cioff; |
