about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Functions/VCS_Info/VCS_INFO_quilt5
-rw-r--r--README5
3 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 820f78734..4687c2212 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2020-03-15  Daniel Shahaf  <danielsh@apache.org>
 
+	* 45543: Functions/VCS_Info/VCS_INFO_quilt, README: vcs_info
+	quilt: Allow quiltcommand to be a function.
+
 	* 45547: Functions/VCS_Info/Backends/VCS_INFO_get_data_git:
 	vcs_info git: In interactive rebases, process
 	gen-unapplied-string arguments like gen-applied-string arguments
diff --git a/Functions/VCS_Info/VCS_INFO_quilt b/Functions/VCS_Info/VCS_INFO_quilt
index fef85964a..264dbed0e 100644
--- a/Functions/VCS_Info/VCS_INFO_quilt
+++ b/Functions/VCS_Info/VCS_INFO_quilt
@@ -133,7 +133,7 @@ function VCS_INFO_quilt-patch2subject() {
         # This zstyle call needs to be moved further up if `quilt' needs
         # to be run in more places than this one.
         zstyle -s "${context}" quiltcommand quiltcommand || quiltcommand='quilt'
-        quilt_env=(env)
+        quilt_env=()
         if [ -z "$patches" ]; then
             zstyle -s "${context}" quilt-patch-dir patches || patches="${QUILT_PATCHES}"
             if [[ "${patches}" != /* ]]; then
@@ -147,7 +147,8 @@ function VCS_INFO_quilt-patch2subject() {
             fi
             quilt_env+=(QUILT_PATCHES="$patches")
         fi
-        unapplied=( ${(f)"$(${quilt_env[@]} $quiltcommand --quiltrc /dev/null unapplied 2> /dev/null)"} )
+        unapplied=( ${(f)"$(if (( $+quilt_env[1] )); then export ${quilt_env[@]}; fi
+                            $quiltcommand --quiltrc /dev/null unapplied 2> /dev/null)"} )
         unapplied=( ${unapplied:#} )
     else
         unapplied=()
diff --git a/README b/README
index b8dfd0e2a..2bd5c2179 100644
--- a/README
+++ b/README
@@ -38,6 +38,11 @@ Build-time change: The default value of the --enable-gdbm configure
 argument has changed from "yes" to "no".  Thus, the zsh/db/gdbm module will
 not be built unless --enable-gdbm is passed explicitly.
 
+vcs_info quilt: The value of the 'quiltcommand' style used to be taken for the
+name of an external command.  Now it may also be a shell function.  Normal
+command word precedece rules apply, so if you have a function and a command
+with the same name, the function will be used.
+
 Incompatibilities since 5.7.1
 -----------------------------