From 6ac50396002ad38668e3cf9d0c3760d03d95c0c9 Mon Sep 17 00:00:00 2001 From: Andy Stewart Date: Thu, 9 Jun 2016 10:01:32 +0100 Subject: [PATCH] Don't try to realtime-diff an untracked file. --- autoload/gitgutter/diff.vim | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/autoload/gitgutter/diff.vim b/autoload/gitgutter/diff.vim index ea3ae28..170193b 100644 --- a/autoload/gitgutter/diff.vim +++ b/autoload/gitgutter/diff.vim @@ -58,7 +58,13 @@ function! gitgutter#diff#run_diff(realtime, preserve_full_diff) abort let bufnr = gitgutter#utility#bufnr() let tracked = getbufvar(bufnr, 'gitgutter_tracked') " i.e. tracked by git if !tracked - let cmd .= g:gitgutter_git_executable.' ls-files --error-unmatch '.gitgutter#utility#shellescape(gitgutter#utility#filename()).' && (' + " Don't bother trying to realtime-diff an untracked file. + " NOTE: perhaps we should pull this guard up to the caller? + if a:realtime + throw 'diff failed' + else + let cmd .= g:gitgutter_git_executable.' ls-files --error-unmatch '.gitgutter#utility#shellescape(gitgutter#utility#filename()).' && (' + endif endif if a:realtime