diff options
author | Miklos Szeredi <miklos@szeredi.hu> | 2005-12-07 12:57:59 +0000 |
---|---|---|
committer | Miklos Szeredi <miklos@szeredi.hu> | 2005-12-07 12:57:59 +0000 |
commit | c53cddd73b690a87c76c1f675d4aa3b526a541db (patch) | |
tree | 138dcca368fc621aed9701480d8133dbbef1c550 /kernel/dir.c | |
parent | 044da2e9e04e48ff1c275b9a674725cb5fd2bd1d (diff) | |
download | libfuse-c53cddd73b690a87c76c1f675d4aa3b526a541db.tar.gz |
fix
Diffstat (limited to 'kernel/dir.c')
-rw-r--r-- | kernel/dir.c | 7 |
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; |