From: Kevin Wolf Date: Mon, 3 May 2021 11:05:55 +0000 (+0200) Subject: block: Fix Transaction leak in bdrv_reopen_multiple() X-Git-Tag: v6.1.0-rc0~115^2~10 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e3fc91aaaacbdc2a88bbb4109c8a1cded628e36f;p=thirdparty%2Fqemu.git block: Fix Transaction leak in bdrv_reopen_multiple() Like other error paths, this one needs to call tran_finalize() and clean up the BlockReopenQueue, too. Fixes: CID 1452772 Fixes: 72373e40fbc7e4218061a8211384db362d3e7348 Signed-off-by: Kevin Wolf Message-Id: <20210503110555.24001-3-kwolf@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Kevin Wolf --- diff --git a/block.c b/block.c index 6dbe9af2cd6..0dc97281dcf 100644 --- a/block.c +++ b/block.c @@ -4050,7 +4050,7 @@ int bdrv_reopen_multiple(BlockReopenQueue *bs_queue, Error **errp) ret = bdrv_flush(bs_entry->state.bs); if (ret < 0) { error_setg_errno(errp, -ret, "Error flushing drive"); - goto cleanup; + goto abort; } }