From: Peter Krempa Date: Thu, 8 Dec 2022 11:28:13 +0000 (+0100) Subject: virSecretGetSecretString: Refactor cleanup X-Git-Tag: v9.0.0-rc1~141 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4102acc608819b15658ca3e37ceca7c89efae16b;p=thirdparty%2Flibvirt.git virSecretGetSecretString: Refactor cleanup Automatically free 'sec' and remove the 'cleanup' section and 'ret' variables. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- diff --git a/src/util/virsecret.c b/src/util/virsecret.c index c01f3fb967..f2c13e27c9 100644 --- a/src/util/virsecret.c +++ b/src/util/virsecret.c @@ -139,8 +139,7 @@ virSecretGetSecretString(virConnectPtr conn, uint8_t **secret, size_t *secret_size) { - virSecretPtr sec = NULL; - int ret = -1; + g_autoptr(virSecret) sec = NULL; switch (seclookupdef->type) { case VIR_SECRET_LOOKUP_TYPE_UUID: @@ -154,7 +153,7 @@ virSecretGetSecretString(virConnectPtr conn, } if (!sec) - goto cleanup; + return -1; /* NB: NONE is a byproduct of the qemuxml2argvtest test mocking * for UUID lookups. Normal secret XML processing would fail if @@ -170,17 +169,11 @@ virSecretGetSecretString(virConnectPtr conn, "expected '%s' type"), uuidstr, virSecretUsageTypeToString(sec->usageType), virSecretUsageTypeToString(secretUsageType)); - goto cleanup; + return -1; } - *secret = conn->secretDriver->secretGetValue(sec, secret_size, 0); - - if (!*secret) - goto cleanup; - - ret = 0; + if (!(*secret = conn->secretDriver->secretGetValue(sec, secret_size, 0))) + return -1; - cleanup: - virObjectUnref(sec); - return ret; + return 0; }