summaryrefslogtreecommitdiffstats
path: root/encoding.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-30 00:31:47 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-30 00:31:47 +0000
commit1495545fa3716e49729c2cdbc10dc576cf52a381 (patch)
treedc41dd012aefa022484dec89040f85f949a396c7 /encoding.c
parent5aa4acb0ee5c1dfdc7fe60223b5683b25f7cbf4e (diff)
downloadruby-1495545fa3716e49729c2cdbc10dc576cf52a381.tar.gz
ruby-1495545fa3716e49729c2cdbc10dc576cf52a381.tar.xz
ruby-1495545fa3716e49729c2cdbc10dc576cf52a381.zip
* 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: http://svn.ruby-lang.org/repos/ruby/trunk@20052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'encoding.c')
-rw-r--r--encoding.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/encoding.c b/encoding.c
index 632f323c3..e9fcbfcb3 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);
}
/*