]> git.proxmox.com Git - mirror_qemu.git/commitdiff
hw/arm/highbank: Fix resource leak and wrong image loading
authorStefan Weil <sw@weilnetz.de>
Wed, 1 Apr 2015 16:57:29 +0000 (17:57 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Wed, 1 Apr 2015 16:57:29 +0000 (17:57 +0100)
Coverity reports a resource leak for sysboot_filename which is allocated
by qemu_find_file.

In addition, that name is used to get the size of the image, but a
different image name was used to load it.

In addition, instead of passing the maximum allowed image size the actual
image size was passed to load_image_targphys.

Fix all three issues.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Message-id: 1426326781-2488-1-git-send-email-sw@weilnetz.de
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/highbank.c

index ddd10dc26f6adbf9a1eac61810962a65fa082c0f..07cb4e057b31c9cc110ddc1c437ae4e0c20b1f8c 100644 (file)
@@ -278,8 +278,7 @@ static void calxeda_init(MachineState *machine, enum cxmachines machine_id)
     if (bios_name != NULL) {
         sysboot_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name);
         if (sysboot_filename != NULL) {
-            uint32_t filesize = get_image_size(sysboot_filename);
-            if (load_image_targphys("sysram.bin", 0xfff88000, filesize) < 0) {
+            if (load_image_targphys(sysboot_filename, 0xfff88000, 0x8000) < 0) {
                 hw_error("Unable to load %s\n", bios_name);
             }
             g_free(sysboot_filename);