From 2bbb0425306e1d86abbe88eabb32e0fa1a6f5e5a Mon Sep 17 00:00:00 2001 From: Rostislav Svoboda Date: Fri, 9 May 2014 17:35:18 +0200 Subject: [PATCH] Fix PROMPT_COMMAND setGitPrompt cumulation when re-sourcing gitprompt.sh Repeated calls of: source .bash-git-prompt/gitprompt.sh lead to cumulation: PROMPT_COMMAND=setGitPrompt;setGitPrompt;... rendering everything slow --- gitprompt.sh | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gitprompt.sh b/gitprompt.sh index fb434cf..df39b43 100755 --- a/gitprompt.sh +++ b/gitprompt.sh @@ -292,7 +292,17 @@ if [ -z "$PROMPT_COMMAND" ]; then else PROMPT_COMMAND=${PROMPT_COMMAND%% }; # remove trailing spaces PROMPT_COMMAND=${PROMPT_COMMAND%\;}; # remove trailing semi-colon - PROMPT_COMMAND="$PROMPT_COMMAND;setGitPrompt" + + local new_entry="setGitPrompt" + case ";$PROMPT_COMMAND;" in + *";$new_entry;"*) + # echo "PROMPT_COMMAND already contains: $new_entry" + :;; + *) + PROMPT_COMMAND="$PROMPT_COMMAND;$new_entry" + # echo "PROMPT_COMMAND does not contain: $new_entry" + ;; + esac fi git_prompt_dir