[前][次][番号順一覧][スレッド一覧]

ruby-changes:2844

From: ko1@a...
Date: 19 Dec 2007 23:39:00 +0900
Subject: [ruby-changes:2844] matz - Ruby:r14335 (trunk): * string.c (rb_str_chomp_bang): wrong adjust condition.

matz	2007-12-19 23:38:46 +0900 (Wed, 19 Dec 2007)

  New Revision: 14335

  Modified files:
    trunk/ChangeLog
    trunk/string.c

  Log:
    * string.c (rb_str_chomp_bang): wrong adjust condition.

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/string.c?r1=14335&r2=14334
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14335&r2=14334

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 14334)
+++ ChangeLog	(revision 14335)
@@ -6,6 +6,8 @@
 	* string.c (rb_str_chomp_bang): check if match start at the head
 	  of a character.
 
+	* string.c (rb_str_chomp_bang): wrong adjust condition.
+
 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@r...>
 
 	* re.c (rb_reg_regsub): should set checked encoding.
Index: string.c
===================================================================
--- string.c	(revision 14334)
+++ string.c	(revision 14335)
@@ -4523,12 +4523,12 @@
     if (is_broken_string(rs)) {
 	return Qnil;
     }
-    pp = p + len - rslen;
+    e = p + len;
+    pp = e - rslen;
     if (p[len-1] == newline &&
 	(rslen <= 1 ||
 	 memcmp(RSTRING_PTR(rs), pp, rslen) == 0)) {
-	if (!isascii(*pp)) {
-	    e = p+len;
+	if (rb_enc_mbmaxlen(enc) > 1) {
 	    while (p < pp) {
 		p += rb_enc_mbclen(p, e, enc);
 	    }

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧]