From 99e4467bb1dd06bbf02eda8492ba0f9bce855531 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Wed, 19 Aug 2020 13:20:13 +0200 Subject: [PATCH] qemuMigrationCapsToJSON: Refactor variable cleanup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use automatic memory allocation and move variables into correct scope to simplify the code and remove the need for a 'error:' label. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- src/qemu/qemu_migration_params.c | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/src/qemu/qemu_migration_params.c b/src/qemu/qemu_migration_params.c index c22362735a..9b6601367a 100644 --- a/src/qemu/qemu_migration_params.c +++ b/src/qemu/qemu_migration_params.c @@ -759,14 +759,12 @@ virJSONValuePtr qemuMigrationCapsToJSON(virBitmapPtr caps, virBitmapPtr states) { - virJSONValuePtr json = NULL; - virJSONValuePtr cap = NULL; + g_autoptr(virJSONValue) json = virJSONValueNewArray(); qemuMigrationCapability bit; - const char *name; - - json = virJSONValueNewArray(); for (bit = 0; bit < QEMU_MIGRATION_CAP_LAST; bit++) { + g_autoptr(virJSONValue) cap = virJSONValueNewObject(); + const char *name = qemuMigrationCapabilityTypeToString(bit); bool supported = false; bool state = false; @@ -776,27 +774,19 @@ qemuMigrationCapsToJSON(virBitmapPtr caps, ignore_value(virBitmapGetBit(states, bit, &state)); - cap = virJSONValueNewObject(); - - name = qemuMigrationCapabilityTypeToString(bit); if (virJSONValueObjectAppendString(cap, "capability", name) < 0) - goto error; + return NULL; if (virJSONValueObjectAppendBoolean(cap, "state", state) < 0) - goto error; + return NULL; if (virJSONValueArrayAppend(json, cap) < 0) - goto error; + return NULL; cap = NULL; } - return json; - - error: - virJSONValueFree(json); - virJSONValueFree(cap); - return NULL; + return g_steal_pointer(&json); }