On 11/3/25 18:03, BALATON Zoltan wrote:
On Mon, 3 Nov 2025, Harsh Prateek Bora wrote:
Hi Balaton,
Thanks for taking care of this ...
On 11/1/25 22:22, BALATON Zoltan wrote:
Commit 9099b430a4 introduced an early return that caused a leak of a
GString. Allocate it later to avoid the leak.
I think we also want to mention:
Reported-by: Peter Maydell <[email protected]>
You can add it on merge.
Fixes: 9099b430a4 (hw/ppc/pegasos2: Change device tree generation)
Resolves: Coverity CID 1642027
Signed-off-by: BALATON Zoltan <[email protected]>
---
hw/ppc/pegasos.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
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;
Curious to know if there were any technical reasons for not using
g_autoptr which Peter initially suggested ?
Just thought it's simpler and more straight forward this way and saves a
bit of unnecessary complication. We don't even allocate the string now
when we exit, with g_autoptr it might do some additional operations
unnecessarily. As this function otherwise does not have multiple exit
points just one free at the end works.
Queued, thanks.