From f6e0ec6e2df64ce90e3a52a3e636f3ffb5c38927 Mon Sep 17 00:00:00 2001 From: Miklos Szeredi Date: Wed, 3 Aug 2005 09:11:06 +0000 Subject: fix --- kernel/dir.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'kernel') diff --git a/kernel/dir.c b/kernel/dir.c index a7a6945..f2fe170 100644 --- a/kernel/dir.c +++ b/kernel/dir.c @@ -24,7 +24,7 @@ static inline unsigned long time_to_jiffies(unsigned long sec, unsigned long nsec) { struct timespec ts = {sec, nsec}; - return jiffies + timespec_to_jiffies(&ts); + return jiffies + ((sec || nsec) ? timespec_to_jiffies(&ts) : 0) - 1; } static void fuse_lookup_init(struct fuse_req *req, struct inode *dir, @@ -552,7 +552,7 @@ static int fuse_permission(struct inode *inode, int mask, struct nameidata *nd) return -EACCES; err = 0; - if (nd && + if (nd && ((nd->flags & LOOKUP_ACCESS) || ((nd->flags & LOOKUP_OPEN) && mode != 0))) err = fuse_access(inode, mask); -- cgit v1.2.3