From c0ec326b7b9508f5d8f710c9e8c3904722df5dce Mon Sep 17 00:00:00 2001 From: naruse Date: Sat, 15 Aug 2009 16:27:13 +0000 Subject: * regparse.c (add_ctype_to_cc_by_range): fix the first character bigger than sb_out was dropped. * test/ruby/test_regexp.rb (TestRegexp#test_posix_bracket): add tests for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- regparse.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'regparse.c') diff --git a/regparse.c b/regparse.c index 876ad546ae..90b26a3bca 100644 --- a/regparse.c +++ b/regparse.c @@ -3797,8 +3797,7 @@ add_ctype_to_cc_by_range(CClassNode* cc, int ctype ARG_UNUSED, int not, for (j = ONIGENC_CODE_RANGE_FROM(mbr, i); j <= ONIGENC_CODE_RANGE_TO(mbr, i); j++) { if (j >= sb_out) { - if (j == ONIGENC_CODE_RANGE_TO(mbr, i)) i++; - else if (j > ONIGENC_CODE_RANGE_FROM(mbr, i)) { + if (j > ONIGENC_CODE_RANGE_FROM(mbr, i)) { r = add_code_range_to_buf(&(cc->mbuf), env, j, ONIGENC_CODE_RANGE_TO(mbr, i)); if (r != 0) return r; -- cgit v1.2.3