aboutsummaryrefslogtreecommitdiffstats
path: root/example/passthrough_ll.c
diff options
context:
space:
mode:
Diffstat (limited to 'example/passthrough_ll.c')
-rw-r--r--example/passthrough_ll.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/example/passthrough_ll.c b/example/passthrough_ll.c
index 0e7535c..8fdf887 100644
--- a/example/passthrough_ll.c
+++ b/example/passthrough_ll.c
@@ -171,6 +171,17 @@ static void lo_init(void *userdata,
}
}
+static void lo_destroy(void *userdata)
+{
+ struct lo_data *lo = (struct lo_data*) userdata;
+
+ while (lo->root.next != &lo->root) {
+ struct lo_inode* next = lo->root.next;
+ lo->root.next = next->next;
+ free(next);
+ }
+}
+
static void lo_getattr(fuse_req_t req, fuse_ino_t ino,
struct fuse_file_info *fi)
{
@@ -1113,6 +1124,7 @@ static void lo_lseek(fuse_req_t req, fuse_ino_t ino, off_t off, int whence,
static const struct fuse_lowlevel_ops lo_oper = {
.init = lo_init,
+ .destroy = lo_destroy,
.lookup = lo_lookup,
.mkdir = lo_mkdir,
.mknod = lo_mknod,