# function zfget_match {

emulate -L zsh

# the zfcd hack:  this may not be necessary here
if [[ $1 == $HOME || $1 == $HOME/* ]]; then
  1="~${1#$HOME}"
fi

local tmpf=${TMPPREFIX}zfgm$$

if [[ $ZFTP_SYSTEM == UNIX* && $1 == */* ]]; then
  # On the first argument to ls, we usually get away with a glob.
  zftp ls "$1*$2" >$tmpf
  reply=($(<$tmpf))
  rm -f $tmpf
else
  if (( $#zftp_fcache == 0 )); then
    # Always cache the current directory and use it
    # even if the system is UNIX.
    zftp ls >$tmpf
    zftp_fcache=($(<$tmpf))
    rm -f $tmpf
  fi
  reply=($zftp_fcache);
fi
# }
