From d4fc98052730c7f1716166fb87f9aab00cbfec1d Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Wed, 29 Nov 2017 11:57:33 +0900 Subject: Need to evaluate ensure clauses at fiber termination. --- src/vm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/vm.c b/src/vm.c index ddb73d1a4..57df9d042 100644 --- a/src/vm.c +++ b/src/vm.c @@ -1896,6 +1896,9 @@ RETRY_TRY_BLOCK: else { struct mrb_context *c = mrb->c; + while (c->eidx > ci->epos) { + ecall_adjust(); + } if (c->fib) { mrb_write_barrier(mrb, (struct RBasic*)c->fib); } -- cgit v1.2.3