From 231d3e9654cb7e3da7e242a97b2a9dd4b07911a1 Mon Sep 17 00:00:00 2001 From: matz Date: Thu, 16 Oct 2003 08:01:15 +0000 Subject: * string.c (rb_str_upto): ("a"..."a").to_a should return []. [ruby-core:01634] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ string.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 053f0a4194..59bfaddc1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Oct 16 16:54:57 2003 Yukihiro Matsumoto + + * string.c (rb_str_upto): ("a"..."a").to_a should return []. + [ruby-core:01634] + Thu Oct 16 16:40:51 2003 Hidetoshi NAGAI * ext/tk/lib/tk.rb: diff --git a/string.c b/string.c index ddf530c998..29c3cea63b 100644 --- a/string.c +++ b/string.c @@ -1174,9 +1174,11 @@ rb_str_upto(beg, end, excl) { VALUE current, after_end; ID succ = rb_intern("succ"); + int n; StringValue(end); - if (rb_str_cmp(beg, end) > 0) return beg; + n = rb_str_cmp(beg, end); + if (n > 0 || (excl && n == 0)) return beg; after_end = rb_funcall(end, succ, 0, 0); current = beg; while (!rb_str_equal(current, after_end)) { -- cgit v1.2.3