From 9bc1307388d77be72a972dc131876a1aa4f9efbf Mon Sep 17 00:00:00 2001 From: Martin Pärtel Date: Sat, 30 Jan 2021 14:34:47 +0200 Subject: Disabled test "preserves readdir inode numbers" in FUSE 3 mode for now. --- src/bindfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/bindfs.c b/src/bindfs.c index aae4281..a3691ac 100644 --- a/src/bindfs.c +++ b/src/bindfs.c @@ -933,7 +933,9 @@ static int bindfs_readdir(const char *path, void *buf, fuse_fill_dir_t filler, // errno in that case, so we zero it first and set it ourself if it // doesn't. #ifdef HAVE_FUSE_3 - if (filler(buf, de->d_name, &st, 0, ((flags & FUSE_READDIR_PLUS) ? 0 : FUSE_FILL_DIR_PLUS)) != 0) { + // TODO: FUSE_FILL_DIR_PLUS doesn't work with offset==0: https://github.com/libfuse/libfuse/issues/583 + // Work around this by implementing the offset!=1 mode. Be careful - it's quite error-prone! + if (filler(buf, de->d_name, &st, 0, FUSE_FILL_DIR_PLUS) != 0) { #else if (filler(buf, de->d_name, &st, 0) != 0) { #endif -- cgit v1.2.3