ruby-changes:4159
From: ko1@a...
Date: Sat, 1 Mar 2008 10:02:45 +0900 (JST)
Subject: [ruby-changes:4159] matz - Ruby:r15649 (trunk): * string.c (rb_str_coderange_scan_restartable): should not return
matz 2008-03-01 10:02:30 +0900 (Sat, 01 Mar 2008) New Revision: 15649 Modified files: trunk/ChangeLog trunk/string.c Log: * string.c (rb_str_coderange_scan_restartable): should not return offset in the middle of a character. * string.c (rb_str_coderange_scan_restartable): should not return invalid cr value. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/string.c?r1=15649&r2=15648&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=15649&r2=15648&diff_format=u Index: ChangeLog =================================================================== --- ChangeLog (revision 15648) +++ ChangeLog (revision 15649) @@ -1,3 +1,11 @@ +Sat Mar 1 10:01:30 2008 Yukihiro Matsumoto <matz@r...> + + * string.c (rb_str_coderange_scan_restartable): should not return + offset in the middle of a character. + + * string.c (rb_str_coderange_scan_restartable): should not return + invalid cr value. + Sat Mar 1 09:36:08 2008 Yukihiro Matsumoto <matz@r...> * sprintf.c (rb_str_format): "%#.0o" should keep prefix where Index: string.c =================================================================== --- string.c (revision 15648) +++ string.c (revision 15649) @@ -224,8 +224,8 @@ while (p < e) { int ret = rb_enc_precise_mbclen(p, e, enc); if (!MBCLEN_CHARFOUND_P(ret)) { - *cr = MBCLEN_INVALID_P(ret) ? ENC_CODERANGE_BROKEN: ret; - return e - s; + *cr = MBCLEN_INVALID_P(ret) ? ENC_CODERANGE_BROKEN: ENC_CODERANGE_UNKNOWN; + return p - s; } p += MBCLEN_CHARFOUND_LEN(ret); if (p < e) { @@ -243,7 +243,7 @@ while (p < e) { int ret = rb_enc_precise_mbclen(p, e, enc); if (!MBCLEN_CHARFOUND_P(ret)) { - *cr = MBCLEN_INVALID_P(ret) ? ENC_CODERANGE_BROKEN: ret; + *cr = MBCLEN_INVALID_P(ret) ? ENC_CODERANGE_BROKEN: ENC_CODERANGE_UNKNOWN; return p - s; } p += MBCLEN_CHARFOUND_LEN(ret); -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/