aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-27 07:36:54 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-27 07:36:54 +0000
commit121d15dddab92307984c55165e2fc0ae01f5ff50 (patch)
tree63384780dff3510988cc23847845007a1cf4a8af
parented58a66fa8bf2af5e085529887e16c2a9498bb1e (diff)
downloadruby-121d15dddab92307984c55165e2fc0ae01f5ff50.tar.gz
* string.c (chopped_length): get rid of unexpected exception.
see [ruby-core:26336]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--string.c4
-rw-r--r--test/ruby/test_m17n_comb.rb9
3 files changed, 7 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 49330e9462..67761069d1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Oct 27 16:36:52 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * string.c (chopped_length): get rid of unexpected exception.
+ see [ruby-core:26336].
+
Tue Oct 27 15:53:10 2009 Tanaka Akira <akr@fsij.org>
* gc.h (SET_MACHINE_STACK_END): use __i386.
diff --git a/string.c b/string.c
index c64d7e40a5..9999c8570a 100644
--- a/string.c
+++ b/string.c
@@ -5925,9 +5925,9 @@ chopped_length(VALUE str)
if (beg > end) return 0;
p = rb_enc_prev_char(beg, end, end, enc);
if (!p) return 0;
- if (p > beg && rb_enc_codepoint(p, end, enc) == '\n') {
+ if (p > beg && rb_enc_ascget(p, end, 0, enc) == '\n') {
p2 = rb_enc_prev_char(beg, p, end, enc);
- if (p2 && rb_enc_codepoint(p2, end, enc) == '\r') p = p2;
+ if (p2 && rb_enc_ascget(p2, end, 0, enc) == '\r') p = p2;
}
return p - beg;
}
diff --git a/test/ruby/test_m17n_comb.rb b/test/ruby/test_m17n_comb.rb
index 2d43a56ab2..2c63e52387 100644
--- a/test/ruby/test_m17n_comb.rb
+++ b/test/ruby/test_m17n_comb.rb
@@ -727,15 +727,6 @@ class TestM17NComb < Test::Unit::TestCase
STRINGS.each {|s|
s = s.dup
desc = "#{encdump s}.chop"
- if !s.valid_encoding?
- #assert_raise(ArgumentError, desc) { s.chop }
- begin
- s.chop
- rescue ArgumentError
- e = $!
- end
- next if e
- end
t = nil
assert_nothing_raised(desc) { t = s.chop }
assert(t.valid_encoding?) if s.valid_encoding?