diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | Completion/Base/_arguments | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 45e7122da..167f2e1dc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2000-05-28 Bart Schaefer <schaefer@zsh.org> + + * 11618: Completion/Base/_arguments: Fix bad shift. + 2000-05-28 Peter Stephenson <pws@pwstephenson.fsnet.co.uk> * 11616: Src/Modules/zftp.c: configure test for netinet/in_systm.h diff --git a/Completion/Base/_arguments b/Completion/Base/_arguments index b605605da..11c62705f 100644 --- a/Completion/Base/_arguments +++ b/Completion/Base/_arguments @@ -285,7 +285,7 @@ if (( $# )) && comparguments -i "$autod" "$@"; then # Otherwise we call it with the description-arguments. - eval "action=( $action )" + set -A action ${=~action} while _next_label "$subc" expl "$descr"; do "$action[1]" "$subopts[@]" "$expl[@]" "${(@)action[2,-1]}" done @@ -293,9 +293,9 @@ if (( $# )) && comparguments -i "$autod" "$@"; then fi fi fi - shift 1 descrs - shift 1 actions - shift 1 subcs + shift "${#descrs} ? 1 : 0" descrs + shift "${#actions} ? 1 : 0" actions + shift "${#subcs} ? 1 : 0" subcs done if [[ -z "$matched$hasopts" ]] && _requested options && |