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

ruby-changes:23029

From: naruse <ko1@a...>
Date: Sun, 18 Mar 2012 14:26:18 +0900 (JST)
Subject: [ruby-changes:23029] naruse:r35078 (ruby_1_9_3): merge revision(s) 34433: [Backport #6153]

naruse	2012-03-18 14:26:07 +0900 (Sun, 18 Mar 2012)

  New Revision: 35078

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

  Log:
    merge revision(s) 34433: [Backport #6153]
    
    * encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string
      is ascii only string. [ruby-core:42354] [Bug #5968]

  Modified files:
    branches/ruby_1_9_3/ChangeLog
    branches/ruby_1_9_3/encoding.c
    branches/ruby_1_9_3/test/ruby/test_encoding.rb
    branches/ruby_1_9_3/version.h

Index: ruby_1_9_3/encoding.c
===================================================================
--- ruby_1_9_3/encoding.c	(revision 35077)
+++ ruby_1_9_3/encoding.c	(revision 35078)
@@ -804,7 +804,6 @@
 		if (cr2 == ENC_CODERANGE_7BIT) return enc1;
 	    }
 	    if (cr2 == ENC_CODERANGE_7BIT) {
-		if (idx1 == ENCINDEX_ASCII) return enc2;
 		return enc1;
 	    }
 	}
Index: ruby_1_9_3/ChangeLog
===================================================================
--- ruby_1_9_3/ChangeLog	(revision 35077)
+++ ruby_1_9_3/ChangeLog	(revision 35078)
@@ -1,3 +1,8 @@
+Sun Mar 18 13:23:28 2012  NARUSE, Yui  <naruse@r...>
+
+	* encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string
+	  is ascii only string. [ruby-core:42354] [Bug #5968]
+
 Tue Mar  6 18:55:37 2012  Nobuyoshi Nakada  <nobu@r...>
 
 	* lib/test/unit/assertions.rb (assert_send, assert_not_send):
Index: ruby_1_9_3/version.h
===================================================================
--- ruby_1_9_3/version.h	(revision 35077)
+++ ruby_1_9_3/version.h	(revision 35078)
@@ -1,10 +1,10 @@
 #define RUBY_VERSION "1.9.3"
-#define RUBY_PATCHLEVEL 164
+#define RUBY_PATCHLEVEL 165
 
-#define RUBY_RELEASE_DATE "2012-03-16"
+#define RUBY_RELEASE_DATE "2012-03-18"
 #define RUBY_RELEASE_YEAR 2012
 #define RUBY_RELEASE_MONTH 3
-#define RUBY_RELEASE_DAY 16
+#define RUBY_RELEASE_DAY 18
 
 #include "ruby/version.h"
 
Index: ruby_1_9_3/test/ruby/test_encoding.rb
===================================================================
--- ruby_1_9_3/test/ruby/test_encoding.rb	(revision 35077)
+++ ruby_1_9_3/test/ruby/test_encoding.rb	(revision 35078)
@@ -99,4 +99,18 @@
     str2 = Marshal.load(Marshal.dump(str2))
     assert_equal(str, str2, '[ruby-dev:38596]')
   end
+
+  def test_unsafe
+    bug5279 = '[ruby-dev:44469]'
+    assert_ruby_status([], '$SAFE=4; "a".encode("utf-16be")', bug5279)
+  end
+
+  def test_compatible_p
+    ua = "abc".force_encoding(Encoding::UTF_8)
+    assert_equal(Encoding::UTF_8, Encoding.compatible?(ua, :abc))
+    assert_equal(nil, Encoding.compatible?(ua, 1))
+    bin = "a".force_encoding(Encoding::ASCII_8BIT)
+    asc = "b".force_encoding(Encoding::US_ASCII)
+    assert_equal(Encoding::ASCII_8BIT, Encoding.compatible?(bin, asc))
+  end
 end

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

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