If bread() returns a zero-length buffer, as can happen after a

failed write, return an error instead of looping forever.

PR:		37035
Submitted by:	das
This commit is contained in:
Tom Rhodes 2003-07-03 14:54:47 +00:00
parent 5cc1a74e77
commit 3c01bab8a3

View file

@ -1571,6 +1571,10 @@ msdosfs_readdir(ap)
return (error);
}
n = min(n, blsize - bp->b_resid);
if (n == 0) {
brelse(bp);
return (EIO);
}
/*
* Convert from dos directory entries to fs-independent