diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Completion/Unix/Command/_rsync | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 761a758df..8b4698590 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-02-29 Clint Adams <clint@zsh.org> + + * 24632: Completion/Unix/Command/_rsync: fix remote ssh filename + quoting. + 2008-02-28 Peter Stephenson <p.w.stephenson@ntlworld.com> * 24627: Src/Zsh/complist.c: fix(?) crash when resizing window diff --git a/Completion/Unix/Command/_rsync b/Completion/Unix/Command/_rsync index b5da516e3..0a86acb7d 100644 --- a/Completion/Unix/Command/_rsync +++ b/Completion/Unix/Command/_rsync @@ -58,7 +58,11 @@ elif compset -P 'rsync://'; then elif compset -P 1 '*:'; then if zstyle -T ":completion:${curcontext}:files" remote-access; then - remfiles=(${(M)${(f)"$(_call_program files ssh -a -x ${IPREFIX%:} ls -d1FL "${(Q)PREFIX%%[^./][^/]#}\*" 2>/dev/null)"}%%[^/]#(|/)}) + if [[ -z $QIPREFIX ]] + then rempat="${PREFIX%%[^./][^/]#}\*" + else rempat="${(q)PREFIX%%[^./][^/]#}\*" + fi + remfiles=(${(M)${(f)"$(_call_program files ssh -a -x ${IPREFIX%:} ls -d1FL "$rempat" 2>/dev/null)"}%%[^/]#(|/)}) compset -P '*/' compset -S '/*' || suf='remote file' |