tags 780582 + patch
kthxbye

This is the minimal patch required to get things working with the git in
both jessie and sid.  It doesn't actually make the feature work in
either case, but considering it's a relatively new feature which doesn't
work at the moment, I consider that acceptable.  You may want to work
with upstream to get a better solution that makes it work with newer
git.

One patch is a cherry-pick from the zsh repository, and the other I
wrote myself.  I've tested it and it works.
-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187
commit 04f187a7bf222c4340975493426a75c02b396991
Author: brian m. carlson <sand...@crustytoothpaste.net>
Date:   Fri Mar 20 16:19:50 2015 +0000

    patches

diff --git a/debian/patches/avoid-grep-warning-with-git-rebase-merge 
b/debian/patches/avoid-grep-warning-with-git-rebase-merge
new file mode 100644
index 0000000..212d218
--- /dev/null
+++ b/debian/patches/avoid-grep-warning-with-git-rebase-merge
@@ -0,0 +1,18 @@
+Description: Avoid warning with git rebase --merge
+ Newer versions of git store data differently in the rebase-merge
+ directory.  Avoid warning about nonexistent files when running
+ vcs_info.
+Author: Axel Beckert <a...@debian.org>
+Bug-Debian: https://bugs.debian.org/780852
+
+--- zsh-5.0.7.orig/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
++++ zsh-5.0.7/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+@@ -210,7 +210,7 @@ elif [[ -d "${gitdir}/rebase-merge" ]];
+         # remove action
+         git_patches_applied+=("${${(s: :)p}[2,-1]}")
+     done
+-    git_patches_unapplied=(${(f)"$(grep -v '^$' "${patchdir}/git-rebase-todo" 
| grep -v '^#')"})
++    git_patches_unapplied=(${(f)"$(grep -v '^$' "${patchdir}/git-rebase-todo" 
2>/dev/null | grep -v '^#')"})
+     VCS_INFO_git_handle_patches
+ elif [[ -d "${gitdir}/rebase-apply" ]]; then
+     # Fake patch names for all but current patch
diff --git 
a/debian/patches/cherry-pick-57be7b74-34673-fix-error-when-rebase-hasnt-started 
b/debian/patches/cherry-pick-57be7b74-34673-fix-error-when-rebase-hasnt-started
new file mode 100644
index 0000000..1d030fa
--- /dev/null
+++ 
b/debian/patches/cherry-pick-57be7b74-34673-fix-error-when-rebase-hasnt-started
@@ -0,0 +1,16 @@
+Description: fix error when rebase hasn't started
+ When using git rebase --merge either with newer git versions or when
+ the rebase hasn't started, the done file inside the rebase directory
+ may not exist.  Avoid an error in this case.
+Bug-Debian: https://bugs.debian.org/780852
+
+--- zsh-5.0.7.orig/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
++++ zsh-5.0.7/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+@@ -205,6 +205,7 @@ then
+ elif [[ -d "${gitdir}/rebase-merge" ]]; then
+     patchdir="${gitdir}/rebase-merge"
+     local p
++    [[ -f "${patchdir}/done" ]] &&
+     for p in ${(f)"$(< "${patchdir}/done")"}; do
+         # remove action
+         git_patches_applied+=("${${(s: :)p}[2,-1]}")
diff --git a/debian/patches/series b/debian/patches/series
index af374d2..993c898 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -7,3 +7,5 @@ 
cherry-pick-605a73e4-33429-disallow-non-integer-values-for-histsize-and-savehist
 cherry-pick-521313b4-tests-for-workers-33429.patch
 
cherry-pick-2d14c085-33445-fix-handling-of-s-when-combined-with-i-at-shell-invocation.patch
 further-mitigate-test-suite-hangs.patch
+cherry-pick-57be7b74-34673-fix-error-when-rebase-hasnt-started
+avoid-grep-warning-with-git-rebase-merge

Attachment: signature.asc
Description: Digital signature

Reply via email to