Commit 396b3fcecf for qemu.org

commit 396b3fcecf910b8a733f9a8d89f142fffd7c0f1a
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date:   Thu Jan 8 15:03:08 2026 -0800

    qdev: make release_string() idempotent

    So it can eventually be called multiple times safely.

    Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
    Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
    Link: https://lore.kernel.org/r/20250429140306.190384-2-marcandre.lureau@redhat.com
    Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
    Link: https://lore.kernel.org/r/20260108230311.584141-3-csomani@redhat.com
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index c2e3f0543f..ba8461e9a4 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -551,7 +551,8 @@ const PropertyInfo qdev_prop_usize = {
 static void release_string(Object *obj, const char *name, void *opaque)
 {
     const Property *prop = opaque;
-    g_free(*(char **)object_field_prop_ptr(obj, prop));
+
+    g_clear_pointer((char **)object_field_prop_ptr(obj, prop), g_free);
 }

 static void get_string(Object *obj, Visitor *v, const char *name,