From 9d119b990fcb939c121b7bddc4a33fe3cd40c697 Mon Sep 17 00:00:00 2001 From: Bart Schaefer Date: Wed, 8 Oct 2003 05:39:51 +0000 Subject: users/6663: fix compaudit testing of symlinks --- ChangeLog | 6 ++++++ Completion/compaudit | 12 ++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9e2d08eea..eccbacfa0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2003-10-07 Bart Schaefer + + * users/6663: Completion/compaudit: follow symlinks when checking + permissions on directories in the fpath; also in case of symlinks, + find parent with ${^fpath:h} rather than ${^fpath}/.. + 2003-09-10 Wayne Davison * users/6529 + unposted: StartupFiles/zshenv: updated the comments diff --git a/Completion/compaudit b/Completion/compaudit index ba2d01c23..528334dc0 100644 --- a/Completion/compaudit +++ b/Completion/compaudit @@ -102,11 +102,11 @@ done <<(getent group) # (including zwc files) if [[ $GROUP == $LOGNAME && ( -z $GROUPMEM || $GROUPMEM == $LOGNAME ) ]]; then - _i_wdirs=( ${^fpath}(Nf:g+w:^g:${GROUP}:,f:o+w:,^u0u${EUID}) - ${^fpath}/..(Nf:g+w:^g:${GROUP}:,f:o+w:,^u0u${EUID}) ) + _i_wdirs=( ${^fpath}(N-f:g+w:^g:${GROUP}:,-f:o+w:,-^u0u${EUID}) + ${^fpath:h}(N-f:g+w:^g:${GROUP}:,-f:o+w:,-^u0u${EUID}) ) else - _i_wdirs=( ${^fpath}(Nf:g+w:,f:o+w:,^u0u${EUID}) - ${^fpath}/..(Nf:g+w:,f:o+w:,^u0u${EUID}) ) + _i_wdirs=( ${^fpath}(N-f:g+w:,-f:o+w:,-^u0u${EUID}) + ${^fpath:h}(N-f:g+w:,-f:o+w:,-^u0u${EUID}) ) fi if [[ -f /etc/debian_version ]] @@ -115,8 +115,8 @@ _i_ulwdirs=( ${(M)_i_wdirs:#/usr/local/*} ) _i_wdirs=( ${_i_wdirs:#/usr/local/*} ${^_i_ulwdir}(Nf:g+ws:^g:staff:,f:o+w:,^u0) ) fi -_i_wdirs=( $_i_wdirs ${^fpath}.zwc^([^_]*|*~)(N^u0u${EUID}) ) -_i_wfiles=( ${^fpath}/^([^_]*|*~)(N^u0u${EUID}) ) +_i_wdirs=( $_i_wdirs ${^fpath}.zwc^([^_]*|*~)(N-^u0u${EUID}) ) +_i_wfiles=( ${^fpath}/^([^_]*|*~)(N-^u0u${EUID}) ) case "${#_i_wdirs}:${#_i_wfiles}" in (0:0) _i_q= ;; -- cgit 1.4.1