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

ruby-changes:9160

From: yugui <ko1@a...>
Date: Sat, 13 Dec 2008 10:03:44 +0900 (JST)
Subject: [ruby-changes:9160] Ruby:r20697 (ruby_1_9_1): merges r20624 from trunk into ruby_1_9_1.

yugui	2008-12-13 10:02:36 +0900 (Sat, 13 Dec 2008)

  New Revision: 20697

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

  Log:
    merges r20624 from trunk into ruby_1_9_1.
    * encoding.c (rb_enc_set_default_internal): defines internal
      encoding as nil.

  Modified files:
    branches/ruby_1_9_1/ChangeLog
    branches/ruby_1_9_1/encoding.c

Index: ruby_1_9_1/encoding.c
===================================================================
--- ruby_1_9_1/encoding.c	(revision 20696)
+++ ruby_1_9_1/encoding.c	(revision 20697)
@@ -38,6 +38,7 @@
 void rb_enc_init(void);
 
 #define ENCODING_COUNT ENCINDEX_BUILTIN_MAX
+#define UNSPECIFIED_ENCODING INT_MAX
 
 #define enc_autoload_p(enc) (!rb_enc_mbmaxlen(enc))
 
@@ -507,7 +508,12 @@
     if (i < 0) {
 	i = load_encoding(name);
     }
-    else if (enc_autoload_p(enc = rb_enc_from_index(i))) {
+    else if (!(enc = rb_enc_from_index(i))) {
+	if (i != UNSPECIFIED_ENCODING) {
+	    rb_raise(rb_eArgError, "encoding %s is not registered", name);
+	}
+    }
+    else if (enc_autoload_p(enc)) {
 	if (enc_autoload(enc) < 0) {
 	    rb_warn("failed to load encoding (%s); use ASCII-8BIT instead",
 		    name);
@@ -1111,6 +1117,8 @@
     if (NIL_P(encoding)) {
 	default_internal_index = -1;
 	default_internal = 0;
+	st_insert(enc_table.names, (st_data_t)strdup("internal"),
+		  (st_data_t)UNSPECIFIED_ENCODING);
 	return;
     }
 
Index: ruby_1_9_1/ChangeLog
===================================================================
--- ruby_1_9_1/ChangeLog	(revision 20696)
+++ ruby_1_9_1/ChangeLog	(revision 20697)
@@ -1,3 +1,17 @@
+Thu Dec 11 13:17:04 2008  Nobuyoshi Nakada  <nobu@r...>
+
+	* encoding.c (rb_enc_set_default_internal): defines internal
+	  encoding as nil.
+
+	* encoding.c (rb_locale_encoding): removed Encoding::LOCALE.
+
+	* encoding.c (rb_enc_set_default_external): ditto.
+
+	* encoding.c (rb_enc_set_default_internal): ditto.
+
+	* encoding.c (rb_enc_set_default_internal): defines internal
+	  encoding as nil.
+
 Thu Dec 11 10:25:25 2008  Yukihiro Matsumoto  <matz@r...>
 
 	* test/ruby/test_bignum.rb (TestBignum#test_convert): remove

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

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