[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] hw/arm/vexpress: Fix memory leak reported by Coveri
From: |
Stefan Weil |
Subject: |
[Qemu-devel] [PATCH] hw/arm/vexpress: Fix memory leak reported by Coverity |
Date: |
Sat, 14 Mar 2015 11:59:44 +0100 |
As the conditional statement had to be splitted anyway, we can also
add a better error report message.
Signed-off-by: Stefan Weil <address@hidden>
---
hw/arm/vexpress.c | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c
index 8496c16..54dd967 100644
--- a/hw/arm/vexpress.c
+++ b/hw/arm/vexpress.c
@@ -562,7 +562,8 @@ static void vexpress_common_init(MachineState *machine)
* If a bios file was provided, attempt to map it into memory
*/
if (bios_name) {
- const char *fn;
+ char *fn;
+ int image_size;
if (drive_get(IF_PFLASH, 0, 0)) {
error_report("The contents of the first flash device may be "
@@ -571,8 +572,14 @@ static void vexpress_common_init(MachineState *machine)
exit(1);
}
fn = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name);
- if (!fn || load_image_targphys(fn, map[VE_NORFLASH0],
- VEXPRESS_FLASH_SIZE) < 0) {
+ if (!fn) {
+ error_report("Could not find ROM image '%s'", bios_name);
+ exit(1);
+ }
+ image_size = load_image_targphys(fn, map[VE_NORFLASH0],
+ VEXPRESS_FLASH_SIZE);
+ g_free(fn);
+ if (image_size < 0) {
error_report("Could not load ROM image '%s'", bios_name);
exit(1);
}
--
1.7.10.4
- [Qemu-devel] [PATCH] hw/arm/vexpress: Fix memory leak reported by Coverity,
Stefan Weil <=