aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Miklos Szeredi <miklos@szeredi.hu>2005-09-23 13:34:44 +0000
committerGravatar Miklos Szeredi <miklos@szeredi.hu>2005-09-23 13:34:44 +0000
commit8722dd21264bc9a053578af726adeefa656e8b2b (patch)
tree824c2f6baeaa1b898d72cddb069f2860eab8fe51
parent6becf0b8644c0536fa12faef3d023134dcb3a100 (diff)
fix
-rw-r--r--ChangeLog2
-rw-r--r--kernel/dir.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 8c91f35..21cf029 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,6 @@
2005-09-23 Miklos Szeredi <miklos@szeredi.hu>
- * Check for special node ID values in LOOKUP/MK*
+ * Check for special node ID values in lookup and creation
2005-09-22 Miklos Szeredi <miklos@szeredi.hu>
diff --git a/kernel/dir.c b/kernel/dir.c
index 3428668..735e8fe 100644
--- a/kernel/dir.c
+++ b/kernel/dir.c
@@ -112,9 +112,9 @@ static int fuse_lookup_iget(struct inode *dir, struct dentry *entry,
fuse_lookup_init(req, dir, entry, &outarg);
request_send(fc, req);
err = req->out.h.error;
- if (!err && outarg.nodeid == FUSE_ROOT_ID)
+ if (!err && (!outarg.nodeid || outarg.nodeid == FUSE_ROOT_ID))
err = -EIO;
- else if (!err && outarg.nodeid) {
+ if (!err) {
inode = fuse_iget(dir->i_sb, outarg.nodeid, outarg.generation,
&outarg.attr);
if (!inode) {