summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Completion/Unix/Command/_ssh5
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index f38f5ae5a..c0404b199 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-03-25 Peter Stephenson <p.w.stephenson@ntlworld.com>
+
+ * usres/11333: Completion/Unix/Command/_ssh: users-hosts
+ didn't limit the hosts properly when the user was matched
+ for ssh.
+
2007-03-24 Clint Adams <clint@zsh.org>
* 23236: Daniel Qarras: Completion/Unix/Command/_module:
diff --git a/Completion/Unix/Command/_ssh b/Completion/Unix/Command/_ssh
index 11be5d1d0..c52b38c3e 100644
--- a/Completion/Unix/Command/_ssh
+++ b/Completion/Unix/Command/_ssh
@@ -326,11 +326,12 @@ _ssh_hosts () {
local config
integer ind
+ # If users-hosts matches, we shouldn't complete anything else.
if [[ "$IPREFIX" == *@ ]]; then
- _combination -s '[:@]' my-accounts users-hosts "users=${IPREFIX/@}" hosts "$@"
+ _combination -s '[:@]' my-accounts users-hosts "users=${IPREFIX/@}" hosts "$@" && return
else
_combination -s '[:@]' my-accounts users-hosts \
- ${opt_args[-l]:+"users=${opt_args[-l]:q}"} hosts "$@"
+ ${opt_args[-l]:+"users=${opt_args[-l]:q}"} hosts "$@" && return
fi
if (( ind = ${words[(I)-F]} )); then
config=${~words[ind+1]}