summaryrefslogtreecommitdiff
path: root/src/common/unionfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/unionfs.c')
-rw-r--r--src/common/unionfs.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/common/unionfs.c b/src/common/unionfs.c
index dff20e6..669858a 100644
--- a/src/common/unionfs.c
+++ b/src/common/unionfs.c
@@ -62,9 +62,21 @@ sys_cp(const char *src_file, const char *dst_file)
static inline void
sys_umount_session(void)
{
+#ifdef USE_UNIONFSFUSE
+ char umountcmd[MAX_LENGTH_DIR_PATH * 2];
+ const char *fusermount_call;
+ const char *umountfmt;
+ fusermount_call = "/usr/bin/fusermount -u ";
+ umountfmt = "%s %s";
+ snprintf(umountcmd, MAX_LENGTH_DIR_PATH * 4, umountfmt, fusermount_call, get_mdirp());
+ if (system(umountcmd) != 0) {
+ perror("umount");
+ }
+#else
if (umount(get_mdirp()) != 0) {
perror("umount");
}
+#endif
}
static inline void