summaryrefslogtreecommitdiff
path: root/encoding.c
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-31 13:55:58 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-31 13:55:58 +0000
commit670c707a2fbd2dfb9289c703ed4b1eb613abcd11 (patch)
tree170ffeb4532745d81d86740d8c2cf174b366f0cc /encoding.c
parentc45f86973c35905703d1fcddd72fcac47175a14e (diff)
merges r20068 from trunk into ruby_1_9_1.
* encoding.c (rb_enc_set_default_internal): no alias "internal" if defalt internal is not set. [ruby-dev:37000] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'encoding.c')
-rw-r--r--encoding.c9
1 files changed, 7 insertions, 2 deletions
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();