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 <pkrempa@xxxxxxxxxx> --- src/qemu/qemu_migration_params.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/qemu/qemu_migration_params.c b/src/qemu/qemu_migration_params.c index 3ed55c2ab4..c22362735a 100644 --- a/src/qemu/qemu_migration_params.c +++ b/src/qemu/qemu_migration_params.c @@ -718,20 +718,17 @@ qemuMigrationParamsFromJSON(virJSONValuePtr params) virJSONValuePtr qemuMigrationParamsToJSON(qemuMigrationParamsPtr migParams) { - virJSONValuePtr params = virJSONValueNewObject(); - qemuMigrationParamValuePtr pv; - const char *name; + g_autoptr(virJSONValue) params = virJSONValueNewObject(); size_t i; - int rc; for (i = 0; i < QEMU_MIGRATION_PARAM_LAST; i++) { - name = qemuMigrationParamTypeToString(i); - pv = &migParams->params[i]; + const char *name = qemuMigrationParamTypeToString(i); + qemuMigrationParamValuePtr pv = &migParams->params[i]; + int rc = 0; if (!pv->set) continue; - rc = 0; switch (qemuMigrationParamTypes[i]) { case QEMU_MIGRATION_PARAM_TYPE_INT: rc = virJSONValueObjectAppendNumberInt(params, name, pv->value.i); @@ -751,14 +748,10 @@ qemuMigrationParamsToJSON(qemuMigrationParamsPtr migParams) } if (rc < 0) - goto error; + return NULL; } - return params; - - error: - virJSONValueFree(params); - return NULL; + return g_steal_pointer(¶ms); } -- 2.26.2