diff options
author | Takashi Kokubun <[email protected]> | 2024-05-29 11:00:27 -0700 |
---|---|---|
committer | Takashi Kokubun <[email protected]> | 2024-05-29 11:00:27 -0700 |
commit | 8f1084db9b07cb74f99de70d6f8bb6076d27d8aa (patch) | |
tree | a5692cdca7e561f7b15721f042465bb3525ce718 /complex.c | |
parent | 22c1e5f126db8e057bdb48d91aa5ae449e019226 (diff) |
merge revision(s) dc146babf47a84bbd1f176d766637d4a40327019,f23d5028059078a346efc977287b669d494a5a3f,a0f7de814ae5c299d6ce99bed5fb308a05d50ba0: [Backport #20296]
[Bug #20296] Clear errinfo when `exception: false`
[Bug #20296] Refine the test
[Bug #20296] Fix the default assertion message
Diffstat (limited to 'complex.c')
-rw-r--r-- | complex.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -2321,8 +2321,11 @@ nucomp_convert(VALUE klass, VALUE a1, VALUE a2, int raise) return a1; /* should raise exception for consistency */ if (!k_numeric_p(a1)) { - if (!raise) - return rb_protect(to_complex, a1, NULL); + if (!raise) { + a1 = rb_protect(to_complex, a1, NULL); + rb_set_errinfo(Qnil); + return a1; + } return to_complex(a1); } } |