diff options
author | Nobuyoshi Nakada <[email protected]> | 2024-09-13 10:50:38 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2024-09-13 18:23:28 +0900 |
commit | 24493779b79bb57fd2e71bf6e0ababe95448a9d6 (patch) | |
tree | 5155b378019571c120785e540b65d9926df01fa7 /range.c | |
parent | 0f3dc2f958bd1447cc459bc4a4f39071a6a07a9c (diff) |
[Bug #20725] Should not call compare on `nil`-endpoint
It means unbounded, always inclusive of other ranges.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/11609
Diffstat (limited to 'range.c')
-rw-r--r-- | range.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -2477,7 +2477,7 @@ range_overlap(VALUE range, VALUE other) /* if both begin values are equal, no more comparisons needed */ if (rb_cmpint(cmp, self_beg, other_beg) == 0) return Qtrue; } - else if (NIL_P(self_beg) && NIL_P(other_beg)) { + else if (NIL_P(self_beg) && !NIL_P(self_end) && NIL_P(other_beg)) { VALUE cmp = rb_funcall(self_end, id_cmp, 1, other_end); return RBOOL(!NIL_P(cmp)); } |