Commit f46cee37 authored by Stefan Berger's avatar Stefan Berger Committed by Stefan Hajnoczi
Browse files

hmp: Fix freeing of PciInfoList



Remember the original PciInfoList in info_list and use
the info variable to traverse the list.

Signed-off-by: default avatarStefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: default avatarStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
parent 0b0404bf
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -486,17 +486,17 @@ static void hmp_info_pci_device(Monitor *mon, const PciDeviceInfo *dev)

void hmp_info_pci(Monitor *mon)
{
    PciInfoList *info;
    PciInfoList *info_list, *info;
    Error *err = NULL;

    info = qmp_query_pci(&err);
    info_list = qmp_query_pci(&err);
    if (err) {
        monitor_printf(mon, "PCI devices not supported\n");
        error_free(err);
        return;
    }

    for (; info; info = info->next) {
    for (info = info_list; info; info = info->next) {
        PciDeviceInfoList *dev;

        for (dev = info->value->devices; dev; dev = dev->next) {
@@ -504,7 +504,7 @@ void hmp_info_pci(Monitor *mon)
        }
    }

    qapi_free_PciInfoList(info);
    qapi_free_PciInfoList(info_list);
}

void hmp_quit(Monitor *mon, const QDict *qdict)