From: Kevin Wolf <kwolf@redhat.com>
To: qemu-block@nongnu.org
Cc: kwolf@redhat.com, peter.maydell@linaro.org, qemu-devel@nongnu.org
Subject: [Qemu-devel] [PULL 20/22] qemu-io: Don't leak pattern file in error path
Date: Thu, 12 Sep 2019 15:46:02 +0200 [thread overview]
Message-ID: <20190912134604.22019-21-kwolf@redhat.com> (raw)
In-Reply-To: <20190912134604.22019-1-kwolf@redhat.com>
qemu_io_alloc_from_file() needs to close the pattern file even if some
error occurred.
Setting f = NULL in the success path and checking it for NULL in the
error path isn't strictly necessary at this point, but let's do it
anyway in case someone later adds a 'goto error' after closing the file.
Coverity: CID 1405303
Fixes: 4d731510d34f280ed45a6de621d016f67a49ea48
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
---
qemu-io-cmds.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/qemu-io-cmds.c b/qemu-io-cmds.c
index d46fa166d3..349256a5fe 100644
--- a/qemu-io-cmds.c
+++ b/qemu-io-cmds.c
@@ -401,6 +401,7 @@ static void *qemu_io_alloc_from_file(BlockBackend *blk, size_t len,
}
fclose(f);
+ f = NULL;
if (len > pattern_len) {
len -= pattern_len;
@@ -420,6 +421,9 @@ static void *qemu_io_alloc_from_file(BlockBackend *blk, size_t len,
error:
qemu_io_free(buf_origin);
+ if (f) {
+ fclose(f);
+ }
return NULL;
}
--
2.20.1
next prev parent reply other threads:[~2019-09-12 14:07 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-12 13:45 [Qemu-devel] [PULL 00/22] Block layer patches Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 01/22] qcow2: Fix the calculation of the maximum L2 cache size Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 02/22] job: drop job_drain Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 03/22] block/file-posix: Reduce xfsctl() use Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 04/22] iotests: Test reverse sub-cluster qcow2 writes Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 05/22] pr-manager: Fix invalid g_free() crash bug Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 06/22] file-posix: Fix has_write_zeroes after NO_FALLBACK Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 07/22] vpc: Return 0 from vpc_co_create() on success Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 08/22] iotests: Add supported protocols to execute_test() Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 09/22] iotests: Restrict file Python tests to file Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 10/22] iotests: Restrict nbd Python tests to nbd Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 11/22] iotests: Test blockdev-create for vpc Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 12/22] iotests: skip 232 when run tests as root Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 13/22] block/nfs: add support for nfs_umount Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 14/22] iotests: allow Valgrind checking all QEMU processes Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 15/22] iotests: exclude killed processes from running under Valgrind Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 16/22] iotests: Add casenotrun report to bash tests Kevin Wolf
2019-09-12 13:45 ` [Qemu-devel] [PULL 17/22] iotests: Valgrind fails with nonexistent directory Kevin Wolf
2019-09-12 13:46 ` [Qemu-devel] [PULL 18/22] iotests: extended timeout under Valgrind Kevin Wolf
2019-09-12 13:46 ` [Qemu-devel] [PULL 19/22] iotests: extend sleeping time " Kevin Wolf
2019-09-12 13:46 ` Kevin Wolf [this message]
2019-09-12 13:46 ` [Qemu-devel] [PULL 21/22] block/create: Do not abort if a block driver is not available Kevin Wolf
2019-09-12 13:46 ` [Qemu-devel] [PULL 22/22] qcow2: Stop overwriting compressed clusters one by one Kevin Wolf
2019-09-13 13:37 ` [Qemu-devel] [PULL 00/22] Block layer patches Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190912134604.22019-21-kwolf@redhat.com \
--to=kwolf@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).