qemuMonitorJSONMigrate: Extract flags prior to constructing command

The migration API takes specific flags which are then converted to
boolean parameters for the command. Extract the flag into helper
variables rather than using ternary operators while constructing the
command itself.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2021-11-30 16:12:00 +01:00
parent bd5309fd58
commit 32e44f213c
1 changed files with 9 additions and 7 deletions

View File

@ -3440,13 +3440,15 @@ int qemuMonitorJSONMigrate(qemuMonitor *mon,
unsigned int flags,
const char *uri)
{
g_autoptr(virJSONValue) cmd =
qemuMonitorJSONMakeCommand("migrate",
"b:detach", flags & QEMU_MONITOR_MIGRATE_BACKGROUND ? 1 : 0,
"b:blk", flags & QEMU_MONITOR_MIGRATE_NON_SHARED_DISK ? 1 : 0,
"b:inc", flags & QEMU_MONITOR_MIGRATE_NON_SHARED_INC ? 1 : 0,
"s:uri", uri,
NULL);
bool detach = !!(flags & QEMU_MONITOR_MIGRATE_BACKGROUND);
bool blk = !!(flags & QEMU_MONITOR_MIGRATE_NON_SHARED_DISK);
bool inc = !!(flags & QEMU_MONITOR_MIGRATE_NON_SHARED_INC);
g_autoptr(virJSONValue) cmd = qemuMonitorJSONMakeCommand("migrate",
"b:detach", detach,
"b:blk", blk,
"b:inc", inc,
"s:uri", uri,
NULL);
g_autoptr(virJSONValue) reply = NULL;
if (!cmd)