diff options
author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2001-06-10 21:39:01 +0000 |
---|---|---|
committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2001-06-10 21:39:01 +0000 |
commit | b27acc8dd19a92a56c43b32a67a1470e22b761f6 (patch) | |
tree | 1ceb53837476d0f517afe1f7aeec40ba3947c02f /sys/fs | |
parent | 7005ce8a5f2966561645b5a76623b603af961039 (diff) | |
download | src-b27acc8dd19a92a56c43b32a67a1470e22b761f6.tar.gz src-b27acc8dd19a92a56c43b32a67a1470e22b761f6.zip |
Bail out if the fill function failed.
Notes
Notes:
svn path=/head/; revision=78018
Diffstat (limited to 'sys/fs')
-rw-r--r-- | sys/fs/pseudofs/pseudofs_vnops.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/fs/pseudofs/pseudofs_vnops.c b/sys/fs/pseudofs/pseudofs_vnops.c index 473b4144f58a..f3170251beb7 100644 --- a/sys/fs/pseudofs/pseudofs_vnops.c +++ b/sys/fs/pseudofs/pseudofs_vnops.c @@ -233,6 +233,11 @@ pfs_read(struct vop_read_args *va) if (proc != NULL) PRELE(proc); + + if (error) { + sbuf_delete(sb); + return (error); + } /* XXX we should possibly detect and handle overflows */ sbuf_finish(sb); @@ -391,6 +396,11 @@ pfs_readlink(struct vop_readlink_args *va) if (proc != NULL) PRELE(proc); + if (error) { + sbuf_delete(&sb); + return (error); + } + /* XXX we should detect and handle overflows */ sbuf_finish(&sb); ps = sbuf_data(&sb) + uio->uio_offset; |