From: SZEDER Gábor Date: Fri, 12 Aug 2011 12:17:12 +0000 (+0200) Subject: bash prompt: avoid command substitution when checking for untracked files X-Git-Tag: v1.8.4-rc0~97^2~2 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/14d7649748265fe9fe991439ca6ae0c9db7a27ab?ds=inline;hp=--cc bash prompt: avoid command substitution when checking for untracked files When enabled, the bash prompt can indicate the presence of untracked files with a '%' sign. __git_ps1() checks for untracked files by running the '$(git ls-files --others --exclude-standard)' command substitution, and displays the indicator when there is no output. Avoid this command substitution by additionally passing '--error-unmatch *', and checking the command's return value. Signed-off-by: SZEDER Gábor --- 14d7649748265fe9fe991439ca6ae0c9db7a27ab diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh index afa867030d..5ea6a68bc0 100644 --- a/contrib/completion/git-prompt.sh +++ b/contrib/completion/git-prompt.sh @@ -442,7 +442,7 @@ __git_ps1 () if [ -n "${GIT_PS1_SHOWUNTRACKEDFILES-}" ] && [ "$(git config --bool bash.showUntrackedFiles)" != "false" ] && - [ -n "$(git ls-files --others --exclude-standard)" ] + git ls-files --others --exclude-standard --error-unmatch -- '*' >/dev/null 2>/dev/null then u="%${ZSH_VERSION+%}" fi