aboutsummaryrefslogtreecommitdiffstats
path: root/example/fuse_lo-plus.c
diff options
context:
space:
mode:
authorNikolaus Rath <Nikolaus@rath.org>2016-10-08 20:04:36 -0700
committerNikolaus Rath <Nikolaus@rath.org>2016-10-08 21:27:06 -0700
commit56690972af25a1fbc60c18c58f757636c0ef0312 (patch)
tree98b468315841741cf5efbc86007cdb5e22d3071a /example/fuse_lo-plus.c
parent0719bd97b16d390f0c5098b7616a79d72089d98b (diff)
downloadlibfuse-56690972af25a1fbc60c18c58f757636c0ef0312.tar.gz
Add background and multithreading support to hello_ll and fuse_lo-plus
Diffstat (limited to 'example/fuse_lo-plus.c')
-rw-r--r--example/fuse_lo-plus.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/example/fuse_lo-plus.c b/example/fuse_lo-plus.c
index 1aa97b0..60c2daf 100644
--- a/example/fuse_lo-plus.c
+++ b/example/fuse_lo-plus.c
@@ -456,13 +456,6 @@ int main(int argc, char *argv[])
ret = 1;
goto err_out1;
}
- if (!opts.foreground)
- fprintf(stderr, "Warning: background operation "
- "is not supported\n");
- if (!opts.singlethread)
- fprintf(stderr, "Warning: multithreading is not "
- "supported\n");
-
lo.debug = opts.debug;
lo.root.next = lo.root.prev = &lo.root;
lo.root.fd = open("/", O_PATH);
@@ -480,7 +473,13 @@ int main(int argc, char *argv[])
if (fuse_session_mount(se, opts.mountpoint) != 0)
goto err_out3;
- ret = fuse_session_loop(se);
+ fuse_daemonize(opts.foreground);
+
+ /* Block until ctrl+c or fusermount -u */
+ if (opts.singlethread)
+ ret = fuse_session_loop(se);
+ else
+ ret = fuse_session_loop_mt(se);
fuse_session_unmount(se);
err_out3: