From a7db2c1efdbf8fc96d06f4b5692d93941ccec606 Mon Sep 17 00:00:00 2001 From: naruse Date: Wed, 18 Nov 2009 03:38:20 +0000 Subject: * encoding.c (enc_set_default_encoding): reset filesytem encoding because on resetting default_external because Unix's filesystem encoding depends on default_external. * encoding.c (enc_set_filesystem_encoding): added. * ruby.c (process_options): don't call rb_filesystem_encoding because filesystem encoding is reset when default_external is reset. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_encoding.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'test/ruby/test_encoding.rb') diff --git a/test/ruby/test_encoding.rb b/test/ruby/test_encoding.rb index 8034977f93..44419242d2 100644 --- a/test/ruby/test_encoding.rb +++ b/test/ruby/test_encoding.rb @@ -1,4 +1,5 @@ require 'test/unit' +require_relative 'envutil' class TestEncoding < Test::Unit::TestCase @@ -39,6 +40,15 @@ class TestEncoding < Test::Unit::TestCase assert_raise(ArgumentError) { Encoding.find("foobarbazqux") } assert_nothing_raised{Encoding.find("locale")} assert_nothing_raised{Encoding.find("filesystem")} + + if /(?:ms|dar)win/ !~ RUBY_PLATFORM + # Unix's filesystem encoding is default_external + assert_ruby_status(%w[-EUTF-8:EUC-JP], <<-'EOS') + exit Encoding.find("filesystem") == Encoding::UTF_8 + Encoding.default_external = Encoding::EUC_JP + exit Encoding.find("filesystem") == Encoding::EUC_JP + EOS + end end def test_dummy_p -- cgit v1.2.3