From: Peter Krempa Date: Wed, 19 Aug 2020 11:18:31 +0000 (+0200) Subject: qemuMigrationParamsToJSON: Refactor variable cleanup X-Git-Tag: v6.7.0-rc1~63 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=47a9f078f0ed01d49c938f6a4c6efbac1766026d;p=thirdparty%2Flibvirt.git qemuMigrationParamsToJSON: Refactor variable cleanup 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 --- 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); }