summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-14 12:11:14 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-14 12:11:14 +0000
commitd46728ec0e134c47a9cf7b1f63d5a0c88902162e (patch)
tree227bb93e09714ead52d5b90e782eb7155583a94e
parentdb30661aa9635d665c8d39592fb18bfb89331410 (diff)
* encoding.c (rb_filesystem_encoding): use default external encoding
for Unix. * dir.c (dir_initialize): don't cache fs_encoding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--dir.c4
-rw-r--r--encoding.c10
3 files changed, 12 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 50735d36d8..f2d20969ef 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Thu Aug 14 21:10:00 2008 Tanaka Akira <akr@fsij.org>
+
+ * encoding.c (rb_filesystem_encoding): use default external encoding
+ for Unix.
+
+ * dir.c (dir_initialize): don't cache fs_encoding.
+
Thu Aug 14 20:58:57 2008 Tanaka Akira <akr@fsij.org>
* transcode.c (rb_econv_open_by_transcoder_entries): renamed from
diff --git a/dir.c b/dir.c
index a3eed26c75..ea13490b21 100644
--- a/dir.c
+++ b/dir.c
@@ -333,17 +333,15 @@ static VALUE
dir_initialize(int argc, VALUE *argv, VALUE dir)
{
struct dir_data *dp;
- static rb_encoding *fs_encoding;
rb_encoding *extencoding;
VALUE dirname, opt;
static VALUE sym_extenc;
if (!sym_extenc) {
sym_extenc = ID2SYM(rb_intern("external_encoding"));
- fs_encoding = rb_filesystem_encoding();
}
+ extencoding = rb_filesystem_encoding();
- extencoding = fs_encoding;
rb_scan_args(argc, argv, "11", &dirname, &opt);
if (!NIL_P(opt)) {
diff --git a/encoding.c b/encoding.c
index d1cf17510d..ca08416fe6 100644
--- a/encoding.c
+++ b/encoding.c
@@ -962,16 +962,14 @@ rb_locale_encoding(void)
rb_encoding *
rb_filesystem_encoding(void)
{
- static rb_encoding *enc;
- if (!enc) {
+ rb_encoding *enc;
#if defined _WIN32
- enc = rb_locale_encoding();
+ enc = rb_locale_encoding();
#elif defined __APPLE__
- enc = rb_enc_find("UTF8-MAC");
+ enc = rb_enc_find("UTF8-MAC");
#else
- enc = rb_locale_encoding();
+ enc = rb_default_external_encoding();
#endif
- }
return enc;
}