From a610b0a959c58099597fcfa52443b806a7b3ab7f Mon Sep 17 00:00:00 2001 From: usa Date: Wed, 10 Jun 2009 09:15:55 +0000 Subject: [PATCH] * dir.c (dir_s_getwd): directory path's encoding should be filesystem's one. * lib/tmpdir.rb: ditto (but not finished yet.) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 +++++++ dir.c | 1 + lib/tmpdir.rb | 1 + 3 files changed, 9 insertions(+) diff --git a/ChangeLog b/ChangeLog index 84673a12d7..aa218a6ef9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed Jun 10 18:15:17 2009 NAKAMURA Usaku + + * dir.c (dir_s_getwd): directory path's encoding should be filesystem's + one. + + * lib/tmpdir.rb: ditto (but not finished yet.) + Wed Jun 10 06:28:15 2009 Eric Hodel * lib/rubygems*: Upgrade to RubyGems 1.3.4 r2223. diff --git a/dir.c b/dir.c index 5c7d00222b..980b57a283 100644 --- a/dir.c +++ b/dir.c @@ -816,6 +816,7 @@ dir_s_getwd(VALUE dir) rb_secure(4); path = my_getcwd(); cwd = rb_tainted_str_new2(path); + rb_enc_associate(cwd, rb_filesystem_encoding()); xfree(path); return cwd; diff --git a/lib/tmpdir.rb b/lib/tmpdir.rb index 9fd36039d7..0d247bdd54 100644 --- a/lib/tmpdir.rb +++ b/lib/tmpdir.rb @@ -27,6 +27,7 @@ class Dir end windir[getdir.call(windir, windir.size)..-1] = "" end + windir.force_encoding(Dir.pwd.encoding) temp = File.expand_path('temp', windir.untaint) @@systmpdir = temp if File.directory?(temp) and File.writable?(temp) rescue LoadError