From: Anthony Liguori <aligu...@us.ibm.com>

ptr properties have neither a get/set or a print/parse which means that when
they're added they aren't treated as static or legacy properties.

Just assume properties like this are legacy properties and treat them as such.

Signed-off-by: Anthony Liguori <aligu...@us.ibm.com>
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
---
 hw/qdev.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/hw/qdev.c b/hw/qdev.c
index f953c51..7f18590 100644
--- a/hw/qdev.c
+++ b/hw/qdev.c
@@ -550,9 +550,12 @@ void qdev_property_add_legacy(DeviceState *dev, Property 
*prop,
 {
     gchar *name, *type;
 
-    if (!prop->info->print && !prop->info->parse) {
+    /* Register pointer properties as legacy properties */
+    if (!prop->info->print && !prop->info->parse &&
+        (prop->info->set || prop->info->get)) {
         return;
     }
+
     name = g_strdup_printf("legacy-%s", prop->name);
     type = g_strdup_printf("legacy<%s>",
                            prop->info->legacy_name ?: prop->info->name);
-- 
1.7.9.3



Reply via email to