@samitouri / QOSamiQemu / commits / 47d71ee2e5

tests/qtest/migration: Fix leak in CPR exec test

The string was being dup'ed only to get around the const of the qdict_get_str() return value. Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Prasad Pandit <pjp@fedoraproject.org> Link: https://lore.kernel.org/qemu-devel/20260311213418.16951-4-farosas@suse.de Signed-off-by: Fabiano Rosas <farosas@suse.de>

Fabiano Rosas committed Mar 11, 2026 at 18:34 UTC 47d71ee2e58037c1bec999260908c7b340832020
1 file changed +3 -2
tests/qtest/migration/cpr-tests.c
+3 -2
@@ -154,15 +154,16 @@ static void set_cpr_exec_args(QTestState *who, MigrateCommon *args)
154 static void wait_for_migration_event(QTestState *who, const char *waitfor)
155 {
156 QDict *rsp, *data;
157 - char *status;
157 bool done = false;
158
159 while (!done) {
160 + const char *status;
161 +
162 rsp = qtest_qmp_eventwait_ref(who, "MIGRATION");
163 g_assert(qdict_haskey(rsp, "data"));
164 data = qdict_get_qdict(rsp, "data");
165 g_assert(qdict_haskey(data, "status"));
165 - status = g_strdup(qdict_get_str(data, "status"));
166 + status = qdict_get_str(data, "status");
167 g_assert(strcmp(status, "failed"));
168 done = !strcmp(status, waitfor);
169 qobject_unref(rsp);