From 86932a2637c0694f5a647b06fcd7e3261660bc35 Mon Sep 17 00:00:00 2001 From: dearblue Date: Wed, 29 Jun 2022 23:55:03 +0900 Subject: [PATCH] Use `mrb_exc_raise()` Helps with C++ affinity. --- src/require.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/require.c b/src/require.c index 2914e1c..96613ba 100644 --- a/src/require.c +++ b/src/require.c @@ -2,7 +2,6 @@ #include #endif #include -#include #include #include "mruby.h" @@ -167,7 +166,7 @@ mrb_require_load_rb_str(mrb_state *mrb, mrb_value self) eval_load_irep(mrb, irep); } else if (mrb->exc) { // fail to load - longjmp(*(jmp_buf*)mrb->jmp, 1); + mrb_exc_raise(mrb, mrb_obj_value(mrb->exc)); } else { mrb_raisef(mrb, E_LOAD_ERROR, "can't load file -- %S", path); return mrb_nil_value(); @@ -199,7 +198,7 @@ mrb_require_load_mrb_file(mrb_state *mrb, mrb_value self) eval_load_irep(mrb, irep); } else if (mrb->exc) { // fail to load - longjmp(*(jmp_buf*)mrb->jmp, 1); + mrb_exc_raise(mrb, mrb_obj_value(mrb->exc)); } else { mrb_raisef(mrb, E_LOAD_ERROR, "can't load file -- %S", path); return mrb_nil_value();