diff options
Diffstat (limited to 'eval_jump.c')
-rw-r--r-- | eval_jump.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/eval_jump.c b/eval_jump.c index dbc3794a59..f3eb30fc56 100644 --- a/eval_jump.c +++ b/eval_jump.c @@ -107,10 +107,12 @@ rb_f_catch(int argc, VALUE *argv) rb_thread_t *th = GET_THREAD(); rb_control_frame_t *saved_cfp = th->cfp; - rb_scan_args(argc, argv, "01", &tag); if (argc == 0) { tag = rb_obj_alloc(rb_cObject); } + else { + rb_scan_args(argc, argv, "01", &tag); + } PUSH_TAG(); th->tag->tag = tag; |