aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog.rst3
-rw-r--r--lib/fuse_loop.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog.rst b/ChangeLog.rst
index a564d9b..ce9ffd7 100644
--- a/ChangeLog.rst
+++ b/ChangeLog.rst
@@ -1,6 +1,9 @@
Unreleased Changes
==================
+* `fuse_loop` no longer returns a positive value if the filesystem
+ loop was terminated without errors or signals.
+
* Improved documentation of `fuse_lowlevel_notify_*` functions.
* `fuse_lowlevel_notify_inval_inode()` and
diff --git a/lib/fuse_loop.c b/lib/fuse_loop.c
index c847bd8..e6560aa 100644
--- a/lib/fuse_loop.c
+++ b/lib/fuse_loop.c
@@ -35,6 +35,10 @@ int fuse_session_loop(struct fuse_session *se)
}
free(fbuf.mem);
+ if(res > 0)
+ /* No error, just the length of the most recently read
+ request */
+ res = 0;
if(se->error != 0)
res = se->error;
fuse_session_reset(se);