diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2004-03-22 19:59:23 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2004-03-22 19:59:23 +0000 |
commit | bd100f28381c496a86cb4fa74acad78aa763af47 (patch) | |
tree | dc470c8e35d3b5ce586888aeba8bedc83318f7b7 | |
parent | c5add3e2f5d7f7823206823959ce5f964cc796eb (diff) | |
download | zsh-bd100f28381c496a86cb4fa74acad78aa763af47.tar.gz zsh-bd100f28381c496a86cb4fa74acad78aa763af47.tar.xz zsh-bd100f28381c496a86cb4fa74acad78aa763af47.zip |
19669, 19670: Danek Duvall: two compaudit problems
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | Completion/compaudit | 14 |
2 files changed, 15 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog index 5540f22fb..709caf86f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2004-03-22 Peter Stephenson <pws@pwstephenson.fsnet.co.uk> + + * 19669, 19670: Danek Duvall: Completion/compaudit: Use of + getent to check groups was slow; typo caused duplicate fpath + entries. + + * 19671: Src/Zle/zle_main.c: error in zle-line-init caused + infinite loop. + 2004-03-20 Bart Schaefer <schaefer@zsh.org> * 19666 (tweaked): Completion/Unix/Command/_ssh: fixes for remote diff --git a/Completion/compaudit b/Completion/compaudit index 528334dc0..c4dbb6e11 100644 --- a/Completion/compaudit +++ b/Completion/compaudit @@ -64,7 +64,7 @@ if [[ -n $_compdir ]]; then # Likewise (installation-layout) _i_addfiles=(${_compdir}/*(/)) fi - for _i_line in {1..$#i_addfiles}; do + for _i_line in {1..$#_i_addfiles}; do _i_file=${_i_addfiles[$_i_line]} [[ -d $_i_file && -z ${fpath[(r)$_i_file]} ]] || _i_addfiles[$_i_line]= @@ -83,13 +83,11 @@ fi # that this has not happened, and pick the best group. 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 - else - (( _i_gid == EGID )) && break # Somewhat arbitrary - fi -done <<(getent group) +if ((UID == EUID )); then + getent group $LOGNAME | IFS=: read GROUP _i_pw _i_gid GROUPMEM +else + getent group $EGID | IFS=: read GROUP _i_pw _i_gid GROUPMEM +fi # We search for: # - world/group-writable directories in fpath not owned by root and the user |