ruby-changes:3783
From: ko1@a...
Date: Sun, 27 Jan 2008 20:09:56 +0900 (JST)
Subject: [ruby-changes:3783] akr - Ruby:r15272 (trunk): * string.c (rb_str_inspect): avoid exception by
akr 2008-01-27 20:09:41 +0900 (Sun, 27 Jan 2008) New Revision: 15272 Modified files: trunk/ChangeLog trunk/string.c Log: * string.c (rb_str_inspect): avoid exception by "\#\xa1".force_encoding("euc-jp").inspect. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/string.c?r1=15272&r2=15271&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=15272&r2=15271&diff_format=u Index: ChangeLog =================================================================== --- ChangeLog (revision 15271) +++ ChangeLog (revision 15272) @@ -1,3 +1,8 @@ +Sun Jan 27 19:51:15 2008 Tanaka Akira <akr@f...> + + * string.c (rb_str_inspect): avoid exception by + "\#\xa1".force_encoding("euc-jp").inspect. + Sun Jan 27 19:07:33 2008 Tanaka Akira <akr@f...> * string.c (rb_str_succ): warning suppressed. Index: string.c =================================================================== --- string.c (revision 15271) +++ string.c (revision 15272) @@ -3311,9 +3311,11 @@ p += n; if (c == '"'|| c == '\\' || - (c == '#' && p < pend && - (cc = rb_enc_codepoint(p,pend,enc), - (cc == '$' || cc == '@' || cc == '{')))) { + (c == '#' && + p < pend && + MBCLEN_CHARFOUND(rb_enc_precise_mbclen(p,pend,enc)) && + (cc = rb_enc_codepoint(p,pend,enc), + (cc == '$' || cc == '@' || cc == '{')))) { prefix_escape(result, c, enc); } else if (c == '\n') { -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/