[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/2] fix fd leak on one qcow2_create2() error path
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [PATCH 1/2] fix fd leak on one qcow2_create2() error path |
Date: |
Thu, 7 Oct 2010 17:25:04 -0300 |
When getting an invalid cluster size, the open fd must be closed before
qcow2_create() returns an error.
Signed-off-by: Eduardo Habkost <address@hidden>
---
block/qcow2.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/block/qcow2.c b/block/qcow2.c
index ee3481b..c5fb28e 100644
--- a/block/qcow2.c
+++ b/block/qcow2.c
@@ -918,7 +918,8 @@ static int qcow_create2(const char *filename, int64_t
total_size,
"%d and %dk\n",
1 << MIN_CLUSTER_BITS,
1 << (MAX_CLUSTER_BITS - 10));
- return -EINVAL;
+ ret = -EINVAL;
+ goto exit_close;
}
s->cluster_size = 1 << s->cluster_bits;
@@ -1052,6 +1053,8 @@ static int qcow_create2(const char *filename, int64_t
total_size,
exit:
qemu_free(s->refcount_table);
qemu_free(s->refcount_block);
+
+exit_close:
close(fd);
/* Preallocate metadata */
--
1.6.5.5