We want object_delete to disappear, and we will do this one class at a time. Inline it for the qdev case, which we will tackle first.
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- hw/qdev.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/qdev.c b/hw/qdev.c index 62b6c14..dcd39b3 100644 --- a/hw/qdev.c +++ b/hw/qdev.c @@ -268,7 +268,8 @@ void qdev_init_nofail(DeviceState *dev) /* Unlink device from bus and free the structure. */ void qdev_free(DeviceState *dev) { - object_delete(OBJECT(dev)); + object_unparent(OBJECT(dev)); + object_unref(OBJECT(dev)); } void qdev_machine_creation_done(void) @@ -485,7 +486,8 @@ BusState *qbus_create(const char *typename, DeviceState *parent, const char *nam void qbus_free(BusState *bus) { - object_delete(OBJECT(bus)); + object_unparent(OBJECT(bus)); + object_unref(OBJECT(bus)); } static char *bus_get_fw_dev_path(BusState *bus, DeviceState *dev) -- 1.8.0.1