diff options
Diffstat (limited to 'lib/tmpdir.rb')
-rw-r--r-- | lib/tmpdir.rb | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/tmpdir.rb b/lib/tmpdir.rb index 788ddbd1ed..9fd36039d7 100644 --- a/lib/tmpdir.rb +++ b/lib/tmpdir.rb @@ -40,12 +40,11 @@ class Dir if $SAFE > 0 tmp = @@systmpdir else - for dir in [ENV['TMPDIR'], ENV['TMP'], ENV['TEMP'], - ENV['USERPROFILE'], @@systmpdir, '/tmp'] - if dir and File.directory?(dir) and File.writable?(dir) + for dir in [ENV['TMPDIR'], ENV['TMP'], ENV['TEMP'], @@systmpdir, '/tmp'] + if dir and stat = File.stat(dir) and stat.directory? and stat.writable? tmp = dir break - end + end rescue nil end File.expand_path(tmp) end |