diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rubygems/config_file.rb | 11 | ||||
-rw-r--r-- | lib/tmpdir.rb | 7 |
2 files changed, 6 insertions, 12 deletions
diff --git a/lib/rubygems/config_file.rb b/lib/rubygems/config_file.rb index 3498d06540..1a96356fa8 100644 --- a/lib/rubygems/config_file.rb +++ b/lib/rubygems/config_file.rb @@ -47,15 +47,8 @@ class Gem::ConfigFile system_config_path = begin - require 'Win32API' - - CSIDL_COMMON_APPDATA = 0x0023 - path = 0.chr * 260 - SHGetFolderPath = Win32API.new 'shell32', 'SHGetFolderPath', 'PLPLP', 'L', - :stdcall - SHGetFolderPath.call nil, CSIDL_COMMON_APPDATA, nil, 1, path - - path.strip + require 'etc.so' + Etc.sysconfdir rescue LoadError '/etc' end diff --git a/lib/tmpdir.rb b/lib/tmpdir.rb index 2f9a2486b0..f043ad5006 100644 --- a/lib/tmpdir.rb +++ b/lib/tmpdir.rb @@ -5,13 +5,14 @@ # require 'fileutils' -if /mswin|mingw/ =~ RUBY_PLATFORM - require 'tmpdir.so' +begin + require 'etc.so' +rescue LoadError end class Dir - @@systmpdir ||= '/tmp' + @@systmpdir ||= defined?(Etc.systmpdir) ? Etc.systmpdir : '/tmp' ## # Returns the operating system's temporary file path. |