about summary refs log tree commit diff
path: root/Functions/VCS_Info
diff options
context:
space:
mode:
authorMikael Magnusson <mikachu@gmail.com>2013-03-10 13:18:32 +0000
committerMikael Magnusson <mikachu@gmail.com>2013-03-10 13:18:32 +0000
commit44907223ff14d424dbfcec4871e41053a07a1dc7 (patch)
treec36e881712e1a73f8b4fc7463e1c07c4e88ef2fc /Functions/VCS_Info
parent0c8625299ae79759ef909c0909b8f7e9b9003d30 (diff)
downloadzsh-44907223ff14d424dbfcec4871e41053a07a1dc7.tar.gz
zsh-44907223ff14d424dbfcec4871e41053a07a1dc7.tar.xz
zsh-44907223ff14d424dbfcec4871e41053a07a1dc7.zip
31136: vcs_info: just set parameters instead of passing over a pipe
Diffstat (limited to 'Functions/VCS_Info')
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_git21
1 files changed, 9 insertions, 12 deletions
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
index 787e76302..3f643a21f 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
@@ -5,10 +5,10 @@
 setopt localoptions extendedglob NO_shwordsplit
 local gitdir gitbase gitbranch gitaction gitunstaged gitstaged gitsha1
 local stgitpatch stgitunapplied
-local -xA hook_com
+local -A hook_com
 
 VCS_INFO_git_getaction () {
-    local gitaction='' gitdir=$1
+    local gitdir=$1
     local tmp
 
     for tmp in "${gitdir}/rebase-apply" \
@@ -22,7 +22,6 @@ VCS_INFO_git_getaction () {
             else
                 gitaction="am/rebase"
             fi
-            printf '%s' ${gitaction}
             return 0
         fi
     done
@@ -30,7 +29,7 @@ VCS_INFO_git_getaction () {
     for tmp in "${gitdir}/rebase-merge/interactive" \
                "${gitdir}/.dotest-merge/interactive" ; do
         if [[ -f "${tmp}" ]] ; then
-            printf '%s' "rebase-i"
+            gitaction="rebase-i"
             return 0
         fi
     done
@@ -38,18 +37,18 @@ VCS_INFO_git_getaction () {
     for tmp in "${gitdir}/rebase-merge" \
                "${gitdir}/.dotest-merge" ; do
         if [[ -d "${tmp}" ]] ; then
-            printf '%s' "rebase-m"
+            gitaction="rebase-m"
             return 0
         fi
     done
 
     if [[ -f "${gitdir}/MERGE_HEAD" ]] ; then
-        printf '%s' "merge"
+        gitaction="merge"
         return 0
     fi
 
     if [[ -f "${gitdir}/BISECT_LOG" ]] ; then
-        printf '%s' "bisect"
+        gitaction="bisect"
         return 0
     fi
 
@@ -59,7 +58,6 @@ VCS_INFO_git_getaction () {
         else
             gitaction=cherry
         fi
-        printf '%s' ${gitaction}
         return 0
     fi
 
@@ -67,7 +65,7 @@ VCS_INFO_git_getaction () {
 }
 
 VCS_INFO_git_getbranch () {
-    local gitbranch gitdir=$1 tmp actiondir
+    local gitdir=$1 tmp actiondir
     local gitsymref="${vcs_comm[cmd]} symbolic-ref HEAD"
 
     actiondir=''
@@ -106,12 +104,11 @@ VCS_INFO_git_getbranch () {
         fi
     fi
 
-    printf '%s' "${gitbranch}"
     return 0
 }
 
 gitdir=${vcs_comm[gitdir]}
-gitbranch="$(VCS_INFO_git_getbranch ${gitdir})"
+VCS_INFO_git_getbranch ${gitdir}
 if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" get-revision ; then
     gitsha1=$(${vcs_comm[cmd]} rev-parse --quiet --verify HEAD)
 else
@@ -134,7 +131,7 @@ if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" "check-for-changes" && \
 fi
 
 VCS_INFO_adjust
-gitaction="$(VCS_INFO_git_getaction ${gitdir})"
+VCS_INFO_git_getaction ${gitdir}
 gitbase=${PWD%/${$( ${vcs_comm[cmd]} rev-parse --show-prefix )%/##}}
 rrn=${gitbase:t}