aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/brew.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/Library/Homebrew/brew.rb b/Library/Homebrew/brew.rb
index e74e65978..f73ca46ed 100644
--- a/Library/Homebrew/brew.rb
+++ b/Library/Homebrew/brew.rb
@@ -32,7 +32,7 @@ begin
empty_argv = ARGV.empty?
help_flag_list = %w[-h --help --usage -?]
- help_flag = false
+ help_flag = !ENV["HOMEBREW_HELP"].nil?
internal_cmd = true
cmd = nil
@@ -119,8 +119,16 @@ begin
if Process.uid.zero? && !brew_uid.zero?
tap_commands += %W[/usr/bin/sudo -u ##{brew_uid}]
end
+ if help_flag
+ # Unset HOMEBREW_HELP to avoid confusing the tap
+ ENV["HOMEBREW_HELP"] = nil
+ end
tap_commands += %W[#{HOMEBREW_BREW_FILE} tap #{possible_tap}]
safe_system(*tap_commands)
+ if help_flag
+ # Restore HOMEBREW_HELP after the tap
+ ENV["HOMEBREW_HELP"] = 1
+ end
exec HOMEBREW_BREW_FILE, cmd, *ARGV
end
rescue UsageError => e