Commit 4faece8368 for qemu.org

commit 4faece83681c29246bfc243f075b3d2047e533b4
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date:   Mon May 4 15:35:23 2026 +0400

    hw/gpio/pca9552: fix state_str leak in pca955x_set_led

    visit_type_str() allocates state_str, but the function never frees it
    on any code path. Use g_autofree to ensure it is freed on return.

    Fixes: a90d8f84674d ("misc/pca9552: Add qom set and get")
    Reviewed-by: Glenn Miles <milesg@linux.ibm.com>
    Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
    Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
    Message-ID: <20260504-qom-tests-v2-35-ef7e3dc94f7a@redhat.com>
    Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>

diff --git a/hw/gpio/pca9552.c b/hw/gpio/pca9552.c
index dd3f1536b6..472d8ad957 100644
--- a/hw/gpio/pca9552.c
+++ b/hw/gpio/pca9552.c
@@ -342,7 +342,7 @@ static void pca955x_set_led(Object *obj, Visitor *v, const char *name,
     PCA955xState *s = PCA955X(obj);
     int led, rc, reg, val;
     uint8_t state;
-    char *state_str;
+    g_autofree char *state_str = NULL;

     if (!visit_type_str(v, name, &state_str, errp)) {
         return;