diff options
| author | Mike McQuaid | 2017-09-23 16:31:52 +0100 |
|---|---|---|
| committer | GitHub | 2017-09-23 16:31:52 +0100 |
| commit | 6b3bb666e880d7140e1199ecedda852f9c68ab79 (patch) | |
| tree | c55cc8e1eb24a641f46190e6e07c6af6b28396d6 /Library/Homebrew | |
| parent | 3343467475c61d72e6796f35ed0eda5daa8a5513 (diff) | |
| parent | 2f6b8dcf687d99fed1a9eb64c07472cc7ea2c838 (diff) | |
| download | brew-6b3bb666e880d7140e1199ecedda852f9c68ab79.tar.bz2 | |
Merge pull request #3174 from sjackman/popen-options
popen: Do not suppress stderr when HOMEBREW_STDERR
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/extend/os/mac/development_tools.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/system_config.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/utils/popen.rb | 14 |
3 files changed, 9 insertions, 9 deletions
diff --git a/Library/Homebrew/extend/os/mac/development_tools.rb b/Library/Homebrew/extend/os/mac/development_tools.rb index b0d78f45b..1931b398d 100644 --- a/Library/Homebrew/extend/os/mac/development_tools.rb +++ b/Library/Homebrew/extend/os/mac/development_tools.rb @@ -9,7 +9,7 @@ class DevelopmentTools @locate[key] = if (located_tool = original_locate(tool)) located_tool elsif MacOS.version > :tiger - path = Utils.popen_read("/usr/bin/xcrun", "-no-cache", "-find", tool).chomp + path = Utils.popen_read("/usr/bin/xcrun", "-no-cache", "-find", tool, err: :close).chomp Pathname.new(path) if File.executable?(path) end end diff --git a/Library/Homebrew/system_config.rb b/Library/Homebrew/system_config.rb index 5663295c2..3e1acd4ff 100644 --- a/Library/Homebrew/system_config.rb +++ b/Library/Homebrew/system_config.rb @@ -134,7 +134,7 @@ class SystemConfig # java_home doesn't exist on all macOSs; it might be missing on older versions. return "N/A" unless File.executable? "/usr/libexec/java_home" - java_xml = Utils.popen_read("/usr/libexec/java_home", "--xml", "--failfast") + java_xml = Utils.popen_read("/usr/libexec/java_home", "--xml", "--failfast", err: :close) return "N/A" unless $CHILD_STATUS.success? javas = [] REXML::XPath.each(REXML::Document.new(java_xml), "//key[text()='JVMVersion']/following-sibling::string") do |item| diff --git a/Library/Homebrew/utils/popen.rb b/Library/Homebrew/utils/popen.rb index 4e03711a1..2fa3ade46 100644 --- a/Library/Homebrew/utils/popen.rb +++ b/Library/Homebrew/utils/popen.rb @@ -1,20 +1,20 @@ module Utils - def self.popen_read(*args, &block) - popen(args, "rb", &block) + def self.popen_read(*args, **options, &block) + popen(args, "rb", options, &block) end - def self.popen_write(*args, &block) - popen(args, "wb", &block) + def self.popen_write(*args, **options, &block) + popen(args, "wb", options, &block) end - def self.popen(args, mode) + def self.popen(args, mode, options = {}) IO.popen("-", mode) do |pipe| if pipe return pipe.read unless block_given? yield pipe else - $stderr.reopen("/dev/null", "w") - exec(*args) + options[:err] ||= :close unless ENV["HOMEBREW_STDERR"] + exec(*args, options) end end end |
