Signed-off-by: Michael Tokarev <m...@tls.msk.ru>
---
 hw/display/cg3.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/hw/display/cg3.c b/hw/display/cg3.c
index 1e6ff2b..5f869a7 100644
--- a/hw/display/cg3.c
+++ b/hw/display/cg3.c
@@ -302,10 +302,12 @@ static void cg3_realizefn(DeviceState *dev, Error **errp)
     if (fcode_filename) {
         ret = load_image_targphys(fcode_filename, s->prom_addr,
                                   FCODE_MAX_ROM_SIZE);
-        if (ret < 0 || ret > FCODE_MAX_ROM_SIZE) {
-            error_report("cg3: could not load prom '%s'", CG3_ROM_FILE);
-        }
     }
+    if (!fcode_filename || ret < 0 || ret > FCODE_MAX_ROM_SIZE) {
+        error_report("cg3: could not load prom '%s'",
+                     fcode_filename ? fcode_filename : CG3_ROM_FILE);
+    }
+    g_free(fcode_filename);
 
     memory_region_init_ram(&s->vram_mem, NULL, "cg3.vram", s->vram_size,
                            &error_abort);
-- 
2.1.4


Reply via email to