aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaotian Li <lihaotian9@huawei.com>2020-11-11 09:05:56 +0800
committerDr. David Alan Gilbert <dgilbert@redhat.com>2020-11-12 16:25:23 +0000
commit7fa87944f82d75d21b7166570ac87d7874c151d5 (patch)
treed033f83d918a9a0bffea2a1a11e3a43b9853c63a
parentf26688a911ed4bc122f597333c9d5b45175e683c (diff)
tools/virtiofsd/buffer.c: check whether buf is NULL in fuse_bufvec_advance func
In fuse_bufvec_advance func, calling fuse_bufvec_current func may return NULL, so we should check whether buf is NULL before using it. Signed-off-by: Haotian Li <lihaotian9@huawei.com> Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com> Message-Id: <29fc87c2-b87c-4c34-40d4-75381f228849@huawei.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
-rw-r--r--tools/virtiofsd/buffer.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/virtiofsd/buffer.c b/tools/virtiofsd/buffer.c
index 27c1377f22..bdc608c221 100644
--- a/tools/virtiofsd/buffer.c
+++ b/tools/virtiofsd/buffer.c
@@ -246,6 +246,10 @@ static int fuse_bufvec_advance(struct fuse_bufvec *bufv, size_t len)
{
const struct fuse_buf *buf = fuse_bufvec_current(bufv);
+ if (!buf) {
+ return 0;
+ }
+
bufv->off += len;
assert(bufv->off <= buf->size);
if (bufv->off == buf->size) {