diff options
author | Kevin Wolf <kwolf@redhat.com> | 2021-10-08 15:34:35 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2021-10-15 16:06:35 +0200 |
commit | 163f384752dd9125ce7eb1b2edf00b23f0a54557 (patch) | |
tree | 59527155773e38b387748fd2c195618daf25d3ea /hw/core | |
parent | c34efecedd0552ee8b830402241e19daebb22aec (diff) | |
download | qemu-163f384752dd9125ce7eb1b2edf00b23f0a54557.zip |
qdev: Make DeviceState.id independent of QemuOpts
DeviceState.id is a pointer to a string that is stored in the QemuOpts
object DeviceState.opts and freed together with it. We want to create
devices without going through QemuOpts in the future, so make this a
separately allocated string.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Message-Id: <20211008133442.141332-9-kwolf@redhat.com>
Reviewed-by: Damien Hedde <damien.hedde@greensocs.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw/core')
-rw-r--r-- | hw/core/qdev.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/core/qdev.c b/hw/core/qdev.c index cefc5eaa0a..d918b50a1d 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -956,6 +956,7 @@ static void device_finalize(Object *obj) } qemu_opts_del(dev->opts); + g_free(dev->id); } static void device_class_base_init(ObjectClass *class, void *data) |