diff options
author | Nobuyoshi Nakada <[email protected]> | 2021-02-09 10:08:30 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2021-02-09 12:59:06 +0900 |
commit | a6f5f3cccda381ae332aaa6467f2644611371fb5 (patch) | |
tree | 783edc640f763e45bb400cbe3e78f5145ff77c36 /eval.c | |
parent | e0c100ec96810b999c704fc73d60255484b63844 (diff) |
Also `eclass` loop can raise in `rb_obj_is_kind_of`
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/4159
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1034,6 +1034,7 @@ rb_vrescue2(VALUE (* b_proc) (VALUE), VALUE data1, int handle = FALSE; VALUE eclass; + result = Qnil; while ((eclass = va_arg(args, VALUE)) != 0) { if (rb_obj_is_kind_of(ec->errinfo, eclass)) { handle = TRUE; @@ -1042,7 +1043,6 @@ rb_vrescue2(VALUE (* b_proc) (VALUE), VALUE data1, } if (handle) { - result = Qnil; state = TAG_NONE; if (r_proc) { result = (*r_proc) (data2, ec->errinfo); |