From 129b80fb9b5eac7f644e1e73e55bcb1fb31ffca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Sat, 21 May 2011 03:40:48 +0200 Subject: [PATCH] simplify the $stdout hijack in `doctor` command Signed-off-by: Adam Vandenberg --- Library/Homebrew/cmd/doctor.rb | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index ddaffeb864..72b64cf297 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -1,3 +1,5 @@ +require 'stringio' + class Volumes def initialize @volumes = [] @@ -699,12 +701,10 @@ end module Homebrew extend self def doctor - read, write = IO.pipe - - if fork == nil - read.close - $stdout.reopen write + old_stdout = $stdout + $stdout = output = StringIO.new + begin check_usr_bin_ruby check_homebrew_prefix check_for_macgpg2 @@ -738,17 +738,15 @@ module Homebrew extend self check_for_autoconf check_for_linked_kegonly_brews check_for_other_frameworks + ensure + $stdout = old_stdout + end - exit! 0 + unless (warnings = output.string).chomp.empty? + puts warnings else - write.close - - unless (out = read.read).chomp.empty? - puts out - else - puts "Your OS X is ripe for brewing." - puts "Any troubles you may be experiencing are likely purely psychosomatic." - end + puts "Your OS X is ripe for brewing." + puts "Any troubles you may be experiencing are likely purely psychosomatic." end end end