From d6a70c4bb71ff6d29231878be398c7775a90007c Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 17 Dec 2007 09:44:06 +0000 Subject: [PATCH] * string.c (scan_once): need no encoding compatibility check. it's done inside of re_reg_seach(). * string.c (rb_str_split_m): ditto. * re.c (rb_reg_regsub): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9 +++++++++ re.c | 1 - string.c | 5 +---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8708125e9e..3524a204e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Mon Dec 17 18:42:23 2007 Yukihiro Matsumoto + + * string.c (scan_once): need no encoding compatibility check. + it's done inside of re_reg_seach(). + + * string.c (rb_str_split_m): ditto. + + * re.c (rb_reg_regsub): ditto. + Mon Dec 17 17:50:30 2007 Yukihiro Matsumoto * string.c (rb_str_index): check if substring is broken. diff --git a/re.c b/re.c index 4559d02be5..ce1d66863a 100644 --- a/re.c +++ b/re.c @@ -2695,7 +2695,6 @@ rb_reg_regsub(VALUE str, VALUE src, struct re_registers *regs, VALUE regexp) int no, clen; rb_encoding *enc = rb_enc_check(str, src); - rb_enc_check(str, regexp); p = s = RSTRING_PTR(str); e = s + RSTRING_LEN(str); diff --git a/string.c b/string.c index 76a0049530..62f5c31380 100644 --- a/string.c +++ b/string.c @@ -4129,9 +4129,6 @@ rb_str_split_m(int argc, VALUE *argv, VALUE str) int last_null = 0; struct re_registers *regs; - if (RREGEXP(spat)->len != 0) { - enc = rb_enc_check(str, spat); - } while ((end = rb_reg_search(spat, str, start, 0)) >= 0) { regs = RMATCH(rb_backref_get())->regs; if (start == end && BEG(0) == END(0)) { @@ -4733,7 +4730,7 @@ scan_once(VALUE str, VALUE pat, long *start) struct re_registers *regs; long i; - enc = rb_enc_check(str, pat); + enc = rb_enc_get(str); if (rb_reg_search(pat, str, *start, 0) >= 0) { match = rb_backref_get(); regs = RMATCH(match)->regs;