From 124d936e3ceec5aff97bcb27b9b92f92db4f7d83 Mon Sep 17 00:00:00 2001 From: yugui Date: Thu, 30 Oct 2008 12:09:58 +0000 Subject: merges r20052 from trunk into ruby_1_9_1. * encoding.c (rb_locale_encoding): makes an alias for locale. [ruby-dev:36976] * encoding.c (rb_enc_set_default_external): ditto for external. * encoding.c (rb_enc_set_default_internal): ditto for internal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- encoding.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'encoding.c') diff --git a/encoding.c b/encoding.c index 632f323c3d..e9fcbfcb3e 100644 --- a/encoding.c +++ b/encoding.c @@ -996,11 +996,11 @@ rb_locale_encoding(void) int idx; if (NIL_P(charmap)) - return rb_usascii_encoding(); - else - idx = rb_enc_find_index(StringValueCStr(charmap)); - if (idx < 0) - return rb_ascii8bit_encoding(); + idx = rb_usascii_encindex(); + else if ((idx = rb_enc_find_index(StringValueCStr(charmap))) < 0) + idx = rb_ascii8bit_encindex(); + + if (rb_enc_registered("locale") < 0) enc_alias("locale", idx); return rb_enc_from_index(idx); } @@ -1057,6 +1057,7 @@ rb_enc_set_default_external(VALUE encoding) { default_external_index = rb_enc_to_index(rb_to_encoding(encoding)); default_external = 0; + enc_alias("external", default_external_index); } /* -2 => not yet set, -1 => nil */ @@ -1106,6 +1107,7 @@ rb_enc_set_default_internal(VALUE encoding) if (default_internal_index == rb_usascii_encindex()) default_internal_index = rb_utf8_encindex(); default_internal = 0; + enc_alias("internal", default_internal_index); } /* -- cgit v1.2.3