summaryrefslogtreecommitdiff
path: root/debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am...
diff options
context:
space:
mode:
authorAxel Beckert <abe@deuxchevaux.org>2014-10-13 22:41:49 +0200
committerAxel Beckert <abe@deuxchevaux.org>2014-10-13 22:41:49 +0200
commit46859b9c7f8539d85c67508c789c938d29d47a3e (patch)
tree0753c1b4cb7004602c712469cdd721086065be07 /debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch
parent503d680705b895cd960a081f26569ae7c2a2d7c4 (diff)
downloadzsh-46859b9c7f8539d85c67508c789c938d29d47a3e.tar.gz
zsh-46859b9c7f8539d85c67508c789c938d29d47a3e.zip
Cherry-pick a03227de (33405: vcs_info: Make sure maxexports is set when VCS_INFO_set is called) from upstream
Diffstat (limited to 'debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch')
-rw-r--r--debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch b/debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch
new file mode 100644
index 000000000..758fa09ff
--- /dev/null
+++ b/debian/patches/cherry-pick-0f73b35f-33391-vcs-info-git-fix-applied-patch-detection-on-git-am.patch
@@ -0,0 +1,51 @@
+Origin: commit 0f73b35f4e0d8adad216ee6650bfef4622df43b1
+Author: Marc Finet <m.dreadlock@gmail.com>
+Date: Thu Oct 9 00:24:45 2014 +0200
+Description: 33391: vcs_info git: fix applied patch detection on git am
+ git-am also uses .git/rebase-apply for patch list but
+ the file original-commit does not exist (as no commit exist).
+ This patch handles both git rebase and git am. Also:
+ - get the first line (rather than the first char) when the message
+ contains only one line;
+ - remove unused function (ironically that should have been used here).
+
+diff --git a/ChangeLog b/ChangeLog
+index 445f1e7..57850eb 100644
+diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+index ee50be6..48d552f 100644
+--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
++++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+@@ -195,14 +195,6 @@ fi
+ VCS_INFO_adjust
+ VCS_INFO_git_getaction ${gitdir}
+
+-
+-VCS_INFO_get_get_rebase()
+-{
+- if [[ -f "$1" ]]; then
+- echo "$(< "$1")"
+- fi
+-}
+-
+ local patchdir=${gitdir}/patches/${gitbranch}
+ if [[ -d $patchdir ]] && [[ -f $patchdir/applied ]] \
+ && [[ -f $patchdir/unapplied ]]
+@@ -223,11 +215,16 @@ elif [[ -d "${gitdir}/rebase-apply" ]]; then
+ # Fake patch names for all but current patch
+ patchdir="${gitdir}/rebase-apply"
+ local cur=$(< "${patchdir}/next")
+- local p
++ local p subject
+ for p in $(seq $(($cur - 1))); do
+ git_patches_applied+=("$(printf "%04d" $p) ?")
+ done
+- git_patches_applied+=("$(< "${patchdir}/original-commit") ${${(f)$(< "${patchdir}/msg-clean")}[1]}")
++ subject="${$(< "${patchdir}/msg-clean")[(f)1]}"
++ if [[ -f "${patchdir}/original-commit" ]]; then
++ git_patches_applied+=("$(< ${patchdir}/original-commit) $subject")
++ else
++ git_patches_applied+=("? $subject")
++ fi
+ git_patches_unapplied=($(seq $cur $(< "${patchdir}/last")))
+
+ VCS_INFO_git_handle_patches