From 3c3bd76528f38f5cdd4fc37e2f015809d5a25c3d Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 26 Nov 2013 16:28:18 +0000 Subject: FormulaInstaller: flush before closing writes. This seems to help the problem with `brew install -v` sometimes truncating output. Closes Homebrew/homebrew#24666. --- Library/Homebrew/build.rb | 1 + Library/Homebrew/formula_installer.rb | 2 ++ 2 files changed, 3 insertions(+) (limited to 'Library') diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index e75a6841e..693b129d4 100755 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -46,6 +46,7 @@ def main rescue Exception => e unless error_pipe.nil? e.continuation = nil if ARGV.debug? + error_pipe.flush Marshal.dump(e, error_pipe) error_pipe.close exit! 1 diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index c0348fe51..5612815e5 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -371,6 +371,7 @@ class FormulaInstaller read.close exec(*args) rescue Exception => e + write.flush Marshal.dump(e, write) write.close exit! 1 @@ -378,6 +379,7 @@ class FormulaInstaller end ignore_interrupts(:quietly) do # the fork will receive the interrupt and marshall it back + write.flush write.close Process.wait data = read.read -- cgit v1.2.3