aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMartin Afanasjew2016-02-25 22:38:43 +0100
committerMartin Afanasjew2016-02-27 18:34:31 +0100
commitbd679c7dc38c06eed8014ef074241836ce605508 (patch)
treed0048d8bc9e5730bc04fc5852335b440adf6d70e /Library
parent2ab4f7452702dd89c6e6457b7dc2cccb5da65263 (diff)
downloadbrew-bd679c7dc38c06eed8014ef074241836ce605508.tar.bz2
brew.sh: improve empty argument handling
Follow-up to Homebrew/homebrew#49327 that leaves empty argument handling to the Ruby code (it is a bit more sophisticated and distinguished between `help` and an empty argument list and treats them differently) instead of hard-wiring the former to the `help` command. Closes Homebrew/homebrew#49538. Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
Diffstat (limited to 'Library')
-rw-r--r--Library/brew.sh6
1 files changed, 4 insertions, 2 deletions
diff --git a/Library/brew.sh b/Library/brew.sh
index 0fde584e1..bc3df4bfe 100644
--- a/Library/brew.sh
+++ b/Library/brew.sh
@@ -117,10 +117,10 @@ then
set -- "$@" -v
fi
+HOMEBREW_ARG_COUNT="$#"
HOMEBREW_COMMAND="$1"
shift
case "$HOMEBREW_COMMAND" in
- '') HOMEBREW_COMMAND="help";;
ls) HOMEBREW_COMMAND="list";;
homepage) HOMEBREW_COMMAND="home";;
-S) HOMEBREW_COMMAND="search";;
@@ -169,5 +169,7 @@ then
source "$HOMEBREW_BASH_COMMAND"
{ "homebrew-$HOMEBREW_COMMAND" "$@"; exit $?; }
else
- exec "$HOMEBREW_RUBY_PATH" -W0 "$HOMEBREW_LIBRARY/brew.rb" "$HOMEBREW_COMMAND" "$@"
+ # Unshift command back into argument list (unless argument list was empty).
+ [[ "$HOMEBREW_ARG_COUNT" -gt 0 ]] && set -- "$HOMEBREW_COMMAND" "$@"
+ exec "$HOMEBREW_RUBY_PATH" -W0 "$HOMEBREW_LIBRARY/brew.rb" "$@"
fi