From: BALATON Zoltan Date: Sat, 1 Nov 2025 16:52:36 +0000 (+0100) Subject: hw/ppc/pegasos: Fix memory leak X-Git-Tag: v10.2.0-rc1~13^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=48387ec49209a6aa0906999788129259f35c5d6b;p=thirdparty%2Fqemu.git hw/ppc/pegasos: Fix memory leak Commit 9099b430a4 introduced an early return that caused a leak of a GString. Allocate it later to avoid the leak. Fixes: 9099b430a4 (hw/ppc/pegasos2: Change device tree generation) Resolves: Coverity CID 1642027 Signed-off-by: BALATON Zoltan Reported-by: Peter Maydell Reviewed-by: Harsh Prateek Bora Reviewed-by: Peter Maydell Signed-off-by: Harsh Prateek Bora Link: https://lore.kernel.org/r/20251101165236.76E8B5972E3@zero.eik.bme.hu Message-ID: <20251101165236.76E8B5972E3@zero.eik.bme.hu> --- diff --git a/hw/ppc/pegasos.c b/hw/ppc/pegasos.c index 3a498edd16..8ce185de3e 100644 --- a/hw/ppc/pegasos.c +++ b/hw/ppc/pegasos.c @@ -847,7 +847,7 @@ static struct { static void add_pci_device(PCIBus *bus, PCIDevice *d, void *opaque) { FDTInfo *fi = opaque; - GString *node = g_string_new(NULL); + GString *node; uint32_t cells[(PCI_NUM_REGIONS + 1) * 5]; int i, j; const char *name = NULL; @@ -871,6 +871,7 @@ static void add_pci_device(PCIBus *bus, PCIDevice *d, void *opaque) break; } } + node = g_string_new(NULL); g_string_printf(node, "%s/%s@%x", fi->path, (name ?: pn), PCI_SLOT(d->devfn)); if (PCI_FUNC(d->devfn)) {