aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--lib/fuse.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 076bcaf..5a648be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,10 @@
* libfuse: fix crash in unlock_path(). Patch by Ratna Manoj
+ * libfuse: fix the 'remember' option. The lru list was not
+ initialized for the "/" path. This resulted in remove_node_lru()
+ crashing on LOOKUP-DOTDOT. Patch by Madan Valluri
+
2012-10-01 Miklos Szeredi <miklos@szeredi.hu>
* Released 2.9.2
diff --git a/lib/fuse.c b/lib/fuse.c
index 1917346..f404650 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -4698,6 +4698,10 @@ struct fuse *fuse_new_common(struct fuse_chan *ch, struct fuse_args *args,
fprintf(stderr, "fuse: memory allocation failed\n");
goto out_free_id_table;
}
+ if (lru_enabled(f)) {
+ struct node_lru *lnode = node_lru(root);
+ init_list_head(&lnode->lru);
+ }
strcpy(root->inline_name, "/");
root->name = root->inline_name;