Commit ef80b466 authored by Gerd Hoffmann's avatar Gerd Hoffmann Committed by Anthony Liguori
Browse files

store a pointer to QemuOpts in DeviceState, release it when zapping a device.

parent 7101174e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -218,6 +218,7 @@ DeviceState *qdev_device_add(QemuOpts *opts)
        qdev_free(qdev);
        return NULL;
    }
    qdev->opts = opts;
    return qdev;
}

@@ -276,6 +277,8 @@ void qdev_free(DeviceState *dev)
            qemu_unregister_reset(dev->info->reset, dev);
        if (dev->info->exit)
            dev->info->exit(dev);
        if (dev->opts)
            qemu_opts_del(dev->opts);
    }
    QLIST_REMOVE(dev, sibling);
    qemu_free(dev);
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ enum DevState {
struct DeviceState {
    const char *id;
    enum DevState state;
    QemuOpts *opts;
    int hotplugged;
    DeviceInfo *info;
    BusState *parent_bus;