If the image file cannot be opened and was created as a temporary file,
it should be deleted; thus, in this case, we should jump to the
"unlink_and_fail" label and not just to "fail".

Reported-by: BenoƮt Canet <ben...@irqsave.net>
Signed-off-by: Max Reitz <mre...@redhat.com>
---
This patch's context depends on my bdrv_open()/bdrv_file_open() series
("[PATCH v3 0/8] block: Integrate bdrv_file_open() into bdrv_open()").
---
 block.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block.c b/block.c
index 62161bd..51c77b0 100644
--- a/block.c
+++ b/block.c
@@ -1308,7 +1308,7 @@ int bdrv_open(BlockDriverState **pbs, const char 
*filename,
                           bdrv_open_flags(bs, flags | BDRV_O_UNMAP) |
                           BDRV_O_PROTOCOL, true, &local_err);
     if (ret < 0) {
-        goto fail;
+        goto unlink_and_fail;
     }
 
     /* Find the right image format driver */
-- 
1.8.5.4


Reply via email to