summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-31 02:35:41 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-31 02:35:41 +0000
commitf32421950029cafebffe3c5d57d6935413a8e314 (patch)
treed678061cfd8cc8cd1d7057db90ad950d9e2ade12
parent6150ae9466f6eb8785a0a218453d291df27cd168 (diff)
downloadruby-f32421950029cafebffe3c5d57d6935413a8e314.tar.gz
ruby-f32421950029cafebffe3c5d57d6935413a8e314.tar.xz
ruby-f32421950029cafebffe3c5d57d6935413a8e314.zip
* encoding.c (rb_enc_set_default_internal): no alias "internal" if
defalt internal is not set. [ruby-dev:37000] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--encoding.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 8954cbe13..be85a65f6 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 08:16:14 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (process_options): delays setting safe level.
diff --git a/encoding.c b/encoding.c
index e9fcbfcb3..7b7d30113 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();