From d05f75f782f6cf56b6103f68c1065ae18a7a41c3 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Wed, 25 Sep 2013 12:45:14 +0900 Subject: [PATCH] Proper handling of invalid branch in parallel installer --- plug.vim | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plug.vim b/plug.vim index 2e51d36..c51cd01 100644 --- a/plug.vim +++ b/plug.vim @@ -274,7 +274,7 @@ function! s:update_serial(pull) if s:git_valid(spec, 0) let result = a:pull ? \ s:system( - \ printf('git checkout -q %s && git pull origin %s 2>&1', + \ printf('git checkout -q %s 2>&1 && git pull origin %s 2>&1', \ spec.branch, spec.branch)) : 'Already installed' let error = a:pull ? v:shell_error != 0 : 0 else @@ -352,7 +352,8 @@ function! s:update_parallel(pull, threads) current_uri = `#{cd} #{dir} && git config remote.origin.url`.chomp if $? == 0 && current_uri == uri if pull - [true, `#{cd} #{dir} && git checkout -q #{branch} && git pull origin #{branch} 2>&1`] + output = `#{cd} #{dir} && git checkout -q #{branch} 2>&1 && git pull origin #{branch} 2>&1` + [$? == 0, output] else [true, skip] end