diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-06-30 14:23:57 -0700 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-06-30 14:23:57 -0700 |
| commit | 068087439e5731648e1072035e118ac99e4f31e3 (patch) | |
| tree | c730bc756354689b450fb88e7748fc090be0b2a3 | |
| parent | 6faab73979d75ccd2211b829984873d912d22823 (diff) | |
| parent | db0eaa6352da470fdeb735403b858738897e3871 (diff) | |
| download | mruby-068087439e5731648e1072035e118ac99e4f31e3.tar.gz mruby-068087439e5731648e1072035e118ac99e4f31e3.zip | |
Merge pull request #1324 from h2so5/fix-range-equal
Fix Range#==
| -rw-r--r-- | src/range.c | 4 | ||||
| -rw-r--r-- | test/t/range.rb | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/range.c b/src/range.c index 73d532d94..992e47bd2 100644 --- a/src/range.c +++ b/src/range.c @@ -162,8 +162,8 @@ mrb_range_eq(mrb_state *mrb, mrb_value range) rr = mrb_range_ptr(range); ro = mrb_range_ptr(obj); - if (!mrb_obj_equal(mrb, rr->edges->beg, ro->edges->beg) || - !mrb_obj_equal(mrb, rr->edges->end, ro->edges->end) || + if (!mrb_bool(mrb_funcall(mrb, rr->edges->beg, "==", 1, ro->edges->beg)) || + !mrb_bool(mrb_funcall(mrb, rr->edges->end, "==", 1, ro->edges->end)) || rr->excl != ro->excl) { return mrb_false_value(); } diff --git a/test/t/range.rb b/test/t/range.rb index 4d0d4cddd..aa414d386 100644 --- a/test/t/range.rb +++ b/test/t/range.rb @@ -12,6 +12,7 @@ end assert('Range#==', '15.2.14.4.1') do assert_true (1..10) == (1..10) assert_false (1..10) == (1..100) + assert_true (1..10) == Range.new(1.0, 10.0) end assert('Range#===', '15.2.14.4.2') do |
