--- flist.c.orig 2018-01-15 04:55:07.000000000 +0100 +++ flist.c 2018-05-18 22:09:16.955006807 +0200 @@ -1700,12 +1700,16 @@ if (!(d = opendir(fbuf))) { if (errno == ENOENT) { if (am_sender) /* Can abuse this for vanished error w/ENOENT: */ interpret_stat_error(fbuf, True); return; } + /* Fuzzy matching in a link-dest or other *-dest directory + * may cause a regular file to be assumed a directory. */ + if (errno == ENOTDIR && !am_sender) + return; io_error |= IOERR_GENERAL; rsyserr(FERROR_XFER, errno, "opendir %s failed", full_fname(fbuf)); return; } p = fbuf + len;