]> git.proxmox.com Git - mirror_qemu.git/commitdiff
migration: Plug memory leak on HMP migrate error path
authorMarkus Armbruster <armbru@redhat.com>
Wed, 17 Jan 2024 14:07:22 +0000 (15:07 +0100)
committerPeter Xu <peterx@redhat.com>
Mon, 29 Jan 2024 03:02:12 +0000 (11:02 +0800)
hmp_migrate() leaks @caps when qmp_migrate() fails.  Plug the leak
with g_autoptr().

Fixes: 967f2de5c9ec (migration: Implement MigrateChannelList to hmp migration flow.) v8.2.0-rc0
Fixes: CID 1533125
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Link: https://lore.kernel.org/r/20240117140722.3979657-1-armbru@redhat.com
[peterx: fix CID number as reported by Peter Maydell]
Signed-off-by: Peter Xu <peterx@redhat.com>
migration/migration-hmp-cmds.c

index 740a219aa498831955af418e8d67c3953b80f8e6..99b49df5dd6f3074fad33e573f0c516766620657 100644 (file)
@@ -764,7 +764,7 @@ void hmp_migrate(Monitor *mon, const QDict *qdict)
     bool resume = qdict_get_try_bool(qdict, "resume", false);
     const char *uri = qdict_get_str(qdict, "uri");
     Error *err = NULL;
-    MigrationChannelList *caps = NULL;
+    g_autoptr(MigrationChannelList) caps = NULL;
     g_autoptr(MigrationChannel) channel = NULL;
 
     if (inc) {
@@ -789,8 +789,6 @@ void hmp_migrate(Monitor *mon, const QDict *qdict)
         return;
     }
 
-    qapi_free_MigrationChannelList(caps);
-
     if (!detach) {
         HMPMigrationStatus *status;