summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--encoding.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 3cdf63a9cd..2c4d7ada3b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Oct 31 11:35:38 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * encoding.c (rb_enc_set_default_internal): no alias "internal" if
+ defalt internal is not set. [ruby-dev:37000]
+
Fri Oct 31 21:28:14 2008 Yusuke Endoh <mame@tsg.ne.jp>
* lib/webrick/httpauth/digestauth.rb
diff --git a/encoding.c b/encoding.c
index e9fcbfcb3e..7b7d301133 100644
--- a/encoding.c
+++ b/encoding.c
@@ -1101,8 +1101,13 @@ rb_enc_set_default_internal(VALUE encoding)
if (default_internal_index != -2)
/* Already set */
return;
- default_internal_index = encoding == Qnil ?
- -1 :rb_enc_to_index(rb_to_encoding(encoding));
+ if (NIL_P(encoding)) {
+ default_internal_index = -1;
+ default_internal = 0;
+ return;
+ }
+
+ default_internal_index = rb_enc_to_index(rb_to_encoding(encoding));
/* Convert US-ASCII => UTF-8 */
if (default_internal_index == rb_usascii_encindex())
default_internal_index = rb_utf8_encindex();