diff --git a/Library/Homebrew/brew.sh b/Library/Homebrew/brew.sh index 747f6236e2..31d41077e9 100644 --- a/Library/Homebrew/brew.sh +++ b/Library/Homebrew/brew.sh @@ -391,9 +391,6 @@ auto-update() { unset HOMEBREW_AUTO_UPDATING unset HOMEBREW_AUTO_UPDATE_TAP - # Restore user path as it'll be refiltered by HOMEBREW_BREW_FILE (bin/brew) - export PATH=${HOMEBREW_PATH} - # exec a new process to set any new environment variables. exec "${HOMEBREW_BREW_FILE}" "$@" fi diff --git a/bin/brew b/bin/brew index e83837eced..91a687ec55 100755 --- a/bin/brew +++ b/bin/brew @@ -57,6 +57,12 @@ do done unset cmd +# Take the HOMEBREW_PATH if we are running brew within brew, otherwise we would lose the original path. +if [[ -n "${HOMEBREW_BREW_FILE:-}" && -n "${HOMEBREW_PATH:-}" ]] +then + PATH="${HOMEBREW_PATH}" +fi + BREW_FILE_DIRECTORY="$(quiet_cd "${0%/*}/" && pwd -P)" HOMEBREW_BREW_FILE="${BREW_FILE_DIRECTORY%/}/${0##*/}" HOMEBREW_PREFIX="${HOMEBREW_BREW_FILE%/*/*}"