From f412d0732b051a4b1d56f7b9e1c592d9b1ab035f Mon Sep 17 00:00:00 2001 From: Miklos Szeredi Date: Fri, 14 Oct 2005 21:24:32 +0000 Subject: fix --- lib/fuse.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'lib/fuse.c') diff --git a/lib/fuse.c b/lib/fuse.c index 8555c45..e44b9f2 100644 --- a/lib/fuse.c +++ b/lib/fuse.c @@ -1056,6 +1056,8 @@ static void fuse_read(fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, printf(" READ[%lu] %u bytes\n", fi->fh, res); fflush(stdout); } + if ((size_t) res > size) + fprintf(stderr, "fuse: read too many bytes"); fuse_reply_buf(req, buf, res); } else reply_err(req, res); @@ -1087,9 +1089,16 @@ static void fuse_write(fuse_req_t req, fuse_ino_t ino, const char *buf, } pthread_rwlock_unlock(&f->tree_lock); - if (res >= 0) + if (res >= 0) { + if (f->flags & FUSE_DEBUG) { + printf(" WRITE%s[%lu] %u bytes\n", + fi->writepage ? "PAGE" : "", fi->fh, res); + fflush(stdout); + } + if ((size_t) res > size) + fprintf(stderr, "fuse: wrote too many bytes"); fuse_reply_write(req, res); - else + } else reply_err(req, res); } -- cgit v1.2.3