fuse: fix READDIRPLUS skipping an entry
Marios Titas running a Haskell program noticed a problem with fuse's
readdirplus: when it is interrupted by a signal, it skips one directory
entry.
The reason is that fuse erronously updates ctx->pos after a failed
dir_emit().
The issue originates from the patch adding readdirplus support.
Reported-by: Jakob Unterwurzacher <[email protected]>
Tested-by: Marios Titas <[email protected]>
Signed-off-by: Miklos Szeredi <[email protected]>
Fixes: 0b05b18381ee ("fuse: implement NFS-like readdirplus support")
Cc: <[email protected]> # v3.9