From 31dddcd267efa8cece076323e407feb1fa9a0141 Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 24 Apr 2006 15:15:22 +0000 Subject: * regex.c (re_compile_pattern): should check if c is not a multibyte chracter. a patch from KIMURA Koichi . [ruby-dev:28598] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@10106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ ext/.document | 3 ++- regex.c | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9278ba9b0..787a4bf5a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Tue Apr 25 00:08:24 2006 Yukihiro Matsumoto + + * regex.c (re_compile_pattern): should check if c is not a + multibyte chracter. a patch from KIMURA Koichi + . [ruby-dev:28598] + Fri Apr 21 15:19:13 2006 Hidetoshi NAGAI * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer diff --git a/ext/.document b/ext/.document index 263d40444..ba8182593 100644 --- a/ext/.document +++ b/ext/.document @@ -4,7 +4,8 @@ enumerator/enumerator.c iconv/iconv.c nkf/lib/kconv.rb nkf/nkf.c +socket/socket.c stringio/stringio.c strscan/strscan.c -zlib/zlib.c win32ole +zlib/zlib.c diff --git a/regex.c b/regex.c index 7717835c9..f2cd24906 100644 --- a/regex.c +++ b/regex.c @@ -1705,7 +1705,7 @@ re_compile_pattern(pattern, size, bufp) goto range_retry; } else { - if (TRANSLATE_P()) c = (unsigned char)translate[c]; + if (TRANSLATE_P() && c < 0x100) c = (unsigned char)translate[c]; if (had_mbchar == 0 && (!current_mbctype || !had_num_literal)) { SET_LIST_BIT(c); had_num_literal = 0; -- cgit