aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/dir.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2005-12-07 12:57:59 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2005-12-07 12:57:59 +0000
commitc53cddd73b690a87c76c1f675d4aa3b526a541db (patch)
tree138dcca368fc621aed9701480d8133dbbef1c550 /kernel/dir.c
parent044da2e9e04e48ff1c275b9a674725cb5fd2bd1d (diff)
downloadlibfuse-c53cddd73b690a87c76c1f675d4aa3b526a541db.tar.gz
fix
Diffstat (limited to 'kernel/dir.c')
-rw-r--r--kernel/dir.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/dir.c b/kernel/dir.c
index 3258d42..8c161b6 100644
--- a/kernel/dir.c
+++ b/kernel/dir.c
@@ -837,7 +837,12 @@ static int fuse_readdir(struct file *file, void *dstbuf, filldir_t filldir)
struct page *page;
struct inode *inode = file->f_dentry->d_inode;
struct fuse_conn *fc = get_fuse_conn(inode);
- struct fuse_req *req = fuse_get_request(fc);
+ struct fuse_req *req;
+
+ if (is_bad_inode(inode))
+ return -EIO;
+
+ req = fuse_get_request(fc);
if (!req)
return -EINTR;