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

ruby-changes:18696

From: naruse <ko1@a...>
Date: Sun, 30 Jan 2011 00:45:06 +0900 (JST)
Subject: [ruby-changes:18696] Ruby:r30721 (trunk): * array.c (rb_ary_join): [].join.encoding must be US-ASCII.

naruse	2011-01-30 00:33:50 +0900 (Sun, 30 Jan 2011)

  New Revision: 30721

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

  Log:
    * array.c (rb_ary_join): [].join.encoding must be US-ASCII.
      [ruby-list:47790]

  Modified files:
    trunk/ChangeLog
    trunk/array.c
    trunk/test/ruby/test_array.rb

Index: array.c
===================================================================
--- array.c	(revision 30720)
+++ array.c	(revision 30721)
@@ -1681,7 +1681,7 @@
     int untrust = FALSE;
     VALUE val, tmp, result;
 
-    if (RARRAY_LEN(ary) == 0) return rb_str_new(0, 0);
+    if (RARRAY_LEN(ary) == 0) return rb_usascii_str_new(0, 0);
     if (OBJ_TAINTED(ary) || OBJ_TAINTED(sep)) taint = TRUE;
     if (OBJ_UNTRUSTED(ary) || OBJ_UNTRUSTED(sep)) untrust = TRUE;
 
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 30720)
+++ ChangeLog	(revision 30721)
@@ -1,3 +1,8 @@
+Sat Jan 29 22:16:26 2011  NARUSE, Yui  <naruse@r...>
+
+	* array.c (rb_ary_join): [].join.encoding must be US-ASCII.
+	  [ruby-list:47790]
+
 Sat Jan 29 20:22:39 2011  KOSAKI Motohiro  <kosaki.motohiro@g...>
 
 	* benchmark/driver.rb (BenchmarkDriver#measure): Show command line
Index: test/ruby/test_array.rb
===================================================================
--- test/ruby/test_array.rb	(revision 30720)
+++ test/ruby/test_array.rb	(revision 30721)
@@ -890,6 +890,7 @@
     a = @cls[]
     assert_equal("", a.join)
     assert_equal("", a.join(','))
+    assert_equal(Encoding::US_ASCII, a.join.encoding)
 
     $, = ""
     a = @cls[1, 2]

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

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