summary refs log tree commit diff
path: root/Functions
diff options
context:
space:
mode:
authorbrian m. carlson <sandals@crustytoothpaste.net>2015-08-17 22:45:31 +0000
committerFrank Terbeck <ft@bewatermyfriend.org>2015-08-18 01:00:25 +0200
commit9a369d39e13787c376c57713ab8c14e5c0f4bfb8 (patch)
tree7d6a24383bf06e209c9b92db4ecdfc0d46960a59 /Functions
parent769c6cbc28eb32bcc2b8eb0bd49a30f015d4ae6b (diff)
downloadzsh-9a369d39e13787c376c57713ab8c14e5c0f4bfb8.tar.gz
zsh-9a369d39e13787c376c57713ab8c14e5c0f4bfb8.tar.xz
zsh-9a369d39e13787c376c57713ab8c14e5c0f4bfb8.zip
36209: vcs_info: avoid grep error message when file is missing
When running git rebase -m and a conflict occurs, the git-rebase-todo
file is not present.  This leads to an error from grep every time the
shell prompt is printed when vcs_info is enabled.  Avoid this message by
checking if the file exists before trying to grep it.
Diffstat (limited to 'Functions')
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_git4
1 files changed, 3 insertions, 1 deletions
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
index c348da2a7..3fc861eeb 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
@@ -210,7 +210,9 @@ elif [[ -d "${gitdir}/rebase-merge" ]]; then
         # remove action
         git_patches_applied+=("${${(s: :)p}[2,-1]}")
     done
-    git_patches_unapplied=(${(f)"$(grep -v '^$' "${patchdir}/git-rebase-todo" | grep -v '^#')"})
+    if [[ -f "${patchdir}/git-rebase-todo" ]] ; then
+        git_patches_unapplied=(${(f)"$(grep -v '^$' "${patchdir}/git-rebase-todo" | grep -v '^#')"})
+    fi
     VCS_INFO_git_handle_patches
 elif [[ -d "${gitdir}/rebase-apply" ]]; then
     # Fake patch names for all but current patch