diff options
author | Kevin Wolf <kwolf@redhat.com> | 2021-05-03 13:05:55 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2021-05-18 11:08:13 +0200 |
commit | e3fc91aaaacbdc2a88bbb4109c8a1cded628e36f (patch) | |
tree | eb1d429468fc32e878642ebb2d4b2201013dc6c1 /block.c | |
parent | e878bb1293d2cd0082550b320c3ccf245d0a69d4 (diff) |
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 <kwolf@redhat.com>
Message-Id: <20210503110555.24001-3-kwolf@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block.c')
-rw-r--r-- | block.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -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; } } |