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

ruby-changes:12024

From: ko1 <ko1@a...>
Date: Sun, 14 Jun 2009 14:51:04 +0900 (JST)
Subject: [ruby-changes:12024] Ruby:r23690 (trunk): * transcode.c (transcode_restartable0): revert last commit because

ko1	2009-06-14 14:50:46 +0900 (Sun, 14 Jun 2009)

  New Revision: 23690

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=23690

  Log:
    * transcode.c (transcode_restartable0): revert last commit because
      this change cause SEGV at test-all.

  Modified files:
    trunk/ChangeLog
    trunk/transcode.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 23689)
+++ ChangeLog	(revision 23690)
@@ -1,3 +1,8 @@
+Sun Jun 14 13:58:32 2009  Koichi Sasada  <ko1@a...>
+
+	* transcode.c (transcode_restartable0): revert last commit because
+	  this change cause SEGV at test-all.
+
 Sun Jun 14 10:49:18 2009  Nobuyoshi Nakada  <nobu@r...>
 
 	* file.c (rb_find_file_ext, rb_find_file): canonicalize absolute
Index: transcode.c
===================================================================
--- transcode.c	(revision 23689)
+++ transcode.c	(revision 23690)
@@ -540,16 +540,15 @@
       follow_info:
 	switch (next_info & 0x1F) {
 	  case NOMAP:
-            {
-                const unsigned char *char_start;
-                size_t char_len, i = 0;
-                char_start = transcode_char_start(tc, *in_pos, inchar_start, in_p, &char_len);
-                while (i < char_len) {
-                    SUSPEND_OBUF(3);
-                    *out_p++ = char_start[i++];
-                }
-            }
-            continue;
+	    {
+		const unsigned char *pend = in_p;
+		in_p = inchar_start;
+		while (in_p < pend) {
+		    next_byte = (unsigned char)*in_p++;
+		    SUSPEND_OBUF(3); *out_p++ = next_byte;
+		}
+	    }
+	    continue;
 	  case 0x00: case 0x04: case 0x08: case 0x0C:
 	  case 0x10: case 0x14: case 0x18: case 0x1C:
             SUSPEND_AFTER_OUTPUT(25);

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

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