summaryrefslogtreecommitdiff
path: root/user/fuse3/fix-realpath.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/fuse3/fix-realpath.patch')
-rw-r--r--user/fuse3/fix-realpath.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/user/fuse3/fix-realpath.patch b/user/fuse3/fix-realpath.patch
new file mode 100644
index 000000000..375bedc96
--- /dev/null
+++ b/user/fuse3/fix-realpath.patch
@@ -0,0 +1,28 @@
+--- fuse-3.1.0.orig/util/fusermount.c
++++ fuse-3.1.0/util/fusermount.c
+@@ -1200,19 +1200,16 @@
+
+ origmnt = argv[optind];
+
+- drop_privs();
+ mnt = fuse_mnt_resolve_path(progname, origmnt);
+- if (mnt != NULL) {
+- res = chdir("/");
+- if (res == -1) {
+- fprintf(stderr, "%s: failed to chdir to '/'\n", progname);
+- goto err_out;
+- }
+- }
+- restore_privs();
+ if (mnt == NULL)
+ exit(1);
+
++ res = chdir("/");
++ if (res == -1) {
++ fprintf(stderr, "%s: failed to chdir to '/'\n", progname);
++ exit(1);
++ }
++
+ umask(033);
+ if (unmount)
+ goto do_unmount;