summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gc.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/gc.c b/src/gc.c
index 1ac881d81..781059d13 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -1527,13 +1527,9 @@ mrb_objspace_each_objects(mrb_state *mrb, mrb_each_object_callback *callback, vo
mrb->jmp = prev_jmp;
mrb->gc.iterating = iterating;
} MRB_CATCH(&c_jmp) {
- mrb->jmp = prev_jmp;
mrb->gc.iterating = iterating;
- if (mrb->exc) {
- mrb_value exc = mrb_obj_value(mrb->exc);
- mrb->exc = NULL;
- mrb_exc_raise(mrb, exc);
- }
+ mrb->jmp = prev_jmp;
+ MRB_THROW(prev_jmp);
} MRB_END_EXC(&c_jmp);
}
}