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,