diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | Completion/compaudit | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 6fd74b22f..6162a97e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2001-09-06 Clint Adams <clint@zsh.org> + * 15740: Completion/compaudit: don't whine about + /usr/local/**/*(/) in $fpath being root:staff 2755 + if we think we're on Debian. + * 15739: Completion/compaudit: use getent instead of /etc/group if possible. diff --git a/Completion/compaudit b/Completion/compaudit index 7fbb90e09..ba2d01c23 100644 --- a/Completion/compaudit +++ b/Completion/compaudit @@ -82,7 +82,7 @@ fi # by NFS group sharing with an untrustworthy machine). So we must assume # that this has not happened, and pick the best group. -local GROUP GROUPMEM _i_pw _i_gid +local GROUP GROUPMEM _i_pw _i_gid _i_ulwdirs while IFS=: read GROUP _i_pw _i_gid GROUPMEM; do if (( UID == EUID )); then [[ $GROUP == $LOGNAME ]] && break @@ -108,6 +108,13 @@ else _i_wdirs=( ${^fpath}(Nf:g+w:,f:o+w:,^u0u${EUID}) ${^fpath}/..(Nf:g+w:,f:o+w:,^u0u${EUID}) ) fi + +if [[ -f /etc/debian_version ]] +then +_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}) ) |