On 11/21/13, 5:54 PM, Hong Xu wrote:
On Thu Nov 21 16:10:50 2013, Bart Schaefer wrote:On Nov 21, 6:13pm, Aaron Schrab wrote: } } This sounds like it may be the same issue that was addressed by the } patch in workers:31985 (http://www.zsh.org/mla/workers/2013/msg01038.html), } sent by Clemens Hammacher. That's probably true, but looking at VCS_INFO_reposub I think applying 31985 is still going to break %S in the way Hong already mentioned.I just tested this patch, yes it did break %S.
I tested the attached patch and it fixes the issue without breaking %S for me. Please give it a try, and if it is good, could you include this patch?
Thanks! Hong
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git index c44be39..cd8f064 100644 --- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git +++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git @@ -132,7 +132,7 @@ fi VCS_INFO_adjust VCS_INFO_git_getaction ${gitdir} -gitbase=${PWD%/${$( ${vcs_comm[cmd]} rev-parse --show-prefix )%/##}} +gitbase=${$(pwd -P)%/${$( ${vcs_comm[cmd]} rev-parse --show-prefix )%/##}} rrn=${gitbase:t} local patchdir=${gitdir}/patches/${gitbranch} diff --git a/Functions/VCS_Info/VCS_INFO_reposub b/Functions/VCS_Info/VCS_INFO_reposub index 0fab863..1c16f0e 100644 --- a/Functions/VCS_Info/VCS_INFO_reposub +++ b/Functions/VCS_Info/VCS_INFO_reposub @@ -5,9 +5,9 @@ setopt localoptions extendedglob NO_shwordsplit local base=${1%%/##} -[[ ${PWD} == ${base}/* ]] || { +[[ $(pwd -P) == ${base}/* ]] || { printf '.' return 1 } -printf '%s' ${PWD#$base/} +printf '%s' ${$(pwd -P)#$base/} return 0