commit - 98576296154a0e6fe5c6fc4b3b517cfb9c3e4402
commit + d8dd8bd77f67af6bb2047bda0fa010ff80d36be5
blob - 677d0175769dee1f73404b966c7291e325e408aa
blob + 8802f85f95e5518dd7736cf73df9e190da4c0e8b
--- client.c
+++ client.c
{
struct fid *f;
ssize_t r;
+ size_t howmuch;
uint64_t off;
uint32_t fid, count;
char buf[2048];
if (f->d == NULL) {
/* read a file */
- r = pread(f->fd, buf, sizeof(buf), (off_t)off);
+ howmuch = MIN(sizeof(buf), count);
+ r = pread(f->fd, buf, howmuch, (off_t)off);
if (r == -1)
np_errno(hdr->tag);
else