From a285f8565d73bc1cba0b369f5cd46d7e23911bc1 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 19 Feb 2009 06:17:01 +0000 Subject: * lib/tmpdir.rb (@@systmpdir): File.expand_path also joins paths. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/tmpdir.rb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/tmpdir.rb b/lib/tmpdir.rb index bcd66ab424..788ddbd1ed 100644 --- a/lib/tmpdir.rb +++ b/lib/tmpdir.rb @@ -18,17 +18,16 @@ class Dir begin getdir = Win32API.new('shell32', 'SHGetFolderPath', 'LLLLP', 'L') raise RuntimeError if getdir.call(0, CSIDL_LOCAL_APPDATA, 0, 0, windir) != 0 - windir = File.expand_path(windir.rstrip) + windir.rstrip! rescue RuntimeError begin getdir = Win32API.new('kernel32', 'GetSystemWindowsDirectory', 'PL', 'L') rescue RuntimeError getdir = Win32API.new('kernel32', 'GetWindowsDirectory', 'PL', 'L') end - len = getdir.call(windir, windir.size) - windir = File.expand_path(windir[0, len]) + windir[getdir.call(windir, windir.size)..-1] = "" end - temp = File.join(windir.untaint, 'temp') + temp = File.expand_path('temp', windir.untaint) @@systmpdir = temp if File.directory?(temp) and File.writable?(temp) rescue LoadError end -- cgit v1.2.3