зеркало из https://github.com/github/ruby.git
* string.c (tr_trans): when the hash for multibyte repl is empty,
tr is inverse mode, and a character doesn't much the table, the character should be replaced by last replacement. Bug #4449 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
3fec2bee37
Коммит
4960e66ab6
|
@ -1,3 +1,9 @@
|
|||
Mon Feb 28 16:28:15 2011 NARUSE, Yui <naruse@ruby-lang.org>
|
||||
|
||||
* string.c (tr_trans): when the hash for multibyte repl is empty,
|
||||
tr is inverse mode, and a character doesn't much the table, the
|
||||
character should be replaced by last replacement. Bug #4449
|
||||
|
||||
Mon Feb 28 16:38:56 2011 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* ext/openssl/ossl_ocsp.c: parenthesize macro arguments.
|
||||
|
|
2
string.c
2
string.c
|
@ -5060,7 +5060,7 @@ tr_trans(VALUE str, VALUE src, VALUE repl, int sflag)
|
|||
else c = NUM2INT(tmp);
|
||||
}
|
||||
else {
|
||||
c = errc;
|
||||
c = cflag ? last : errc;
|
||||
}
|
||||
if (c != errc) {
|
||||
tlen = rb_enc_codelen(c, enc);
|
||||
|
|
|
@ -962,6 +962,7 @@ class TestM17N < Test::Unit::TestCase
|
|||
|
||||
assert_equal("X\u3042\u3044X", "A\u3042\u3044\u3046".tr("^\u3042\u3044", "X"))
|
||||
assert_equal("\u3042\u3046" * 100, ("\u3042\u3044" * 100).tr("\u3044", "\u3046"))
|
||||
assert_equal("Y", "\u3042".tr("^X", "Y"))
|
||||
end
|
||||
|
||||
def test_tr_s
|
||||
|
|
Загрузка…
Ссылка в новой задаче