diff options
author | Axel Beckert <abe@deuxchevaux.org> | 2015-11-25 18:51:00 +0100 |
---|---|---|
committer | Axel Beckert <abe@deuxchevaux.org> | 2015-11-25 18:51:00 +0100 |
commit | 317ec32cb1cbd15b31e17bcb07f09c52cd37c44a (patch) | |
tree | 88a02c853dfafd82a2d551d862d8dfb056b1bee6 /Functions/VCS_Info/VCS_INFO_quilt | |
parent | 1637291aaea12ddcfd549d50d49c480185995c1a (diff) | |
parent | cce4261a3c6f4bf78b483db61623c80e3c98d10b (diff) | |
download | zsh-317ec32cb1cbd15b31e17bcb07f09c52cd37c44a.tar.gz zsh-317ec32cb1cbd15b31e17bcb07f09c52cd37c44a.zip |
Merge tag 'zsh-5.1.1-test-1' into debian
Diffstat (limited to 'Functions/VCS_Info/VCS_INFO_quilt')
-rw-r--r-- | Functions/VCS_Info/VCS_INFO_quilt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Functions/VCS_Info/VCS_INFO_quilt b/Functions/VCS_Info/VCS_INFO_quilt index bc71cfb7d..c3c3d864d 100644 --- a/Functions/VCS_Info/VCS_INFO_quilt +++ b/Functions/VCS_Info/VCS_INFO_quilt @@ -119,6 +119,7 @@ function VCS_INFO_quilt() { applied=() fi patches=$(<$pc/.quilt_patches) + patches=`builtin cd -q "${pc:h}" && print -r - ${patches:A}` fi if zstyle -t "${context}" get-unapplied; then # This zstyle call needs to be moved further up if `quilt' needs @@ -144,6 +145,36 @@ function VCS_INFO_quilt() { unapplied=() fi + if [[ -n $patches ]]; then + () { + local i line + for ((i=1; i<=$#applied; i++)); do + if [[ -f "$patches/$applied[$i]" ]] && + read -r line < "$patches/$applied[$i]" && + [[ $line != (#b)(---|Index:)* ]] && + true + ; + then + applied[$i]+=" $line" + else + applied[$i]+=" ?" + fi + done + for ((i=1; i<=$#unapplied; i++)); do + if [[ -f "$patches/$unapplied[$i]" ]] && + read -r line < "$patches/$unapplied[$i]" && + [[ $line != (#b)(---|Index:)* ]] && + true + ; + then + unapplied[$i]+=" $line" + else + unapplied[$i]+=" ?" + fi + done + } + fi + all=( ${(Oa)applied} ${unapplied} ) if VCS_INFO_hook 'gen-applied-string' "${applied[@]}"; then |