From 813e7759834202f78d0f9419c80353b00685c827 Mon Sep 17 00:00:00 2001 From: John Ferlan Date: Tue, 12 Feb 2019 06:39:50 -0500 Subject: [PATCH] storage: Cleanup virStorageBackendLogicalFindPoolSourcesFunc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than have two error paths, let's use a @retval value and VIR_STEAL_PTR on @vgname and @pvname to unity the exit path through the error label. Signed-off-by: John Ferlan Reviewed-by: Erik Skultety Reviewed-by: Ján Tomko --- src/storage/storage_backend_logical.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c index fd95bd0d48..46e5bb3ee9 100644 --- a/src/storage/storage_backend_logical.c +++ b/src/storage/storage_backend_logical.c @@ -484,6 +484,7 @@ virStorageBackendLogicalFindPoolSourcesFunc(char **const groups, virStoragePoolSourceListPtr sourceList = data; char *pvname = NULL; char *vgname = NULL; + int retval = -1; size_t i; virStoragePoolSourceDevicePtr dev; virStoragePoolSource *thisSource; @@ -504,10 +505,8 @@ virStorageBackendLogicalFindPoolSourcesFunc(char **const groups, if (!(thisSource = virStoragePoolSourceListNewSource(sourceList))) goto error; - thisSource->name = vgname; + VIR_STEAL_PTR(thisSource->name, vgname); } - else - VIR_FREE(vgname); if (VIR_REALLOC_N(thisSource->devices, thisSource->ndevice + 1) != 0) goto error; @@ -517,15 +516,15 @@ virStorageBackendLogicalFindPoolSourcesFunc(char **const groups, thisSource->format = VIR_STORAGE_POOL_LOGICAL_LVM2; memset(dev, 0, sizeof(*dev)); - dev->path = pvname; + VIR_STEAL_PTR(dev->path, pvname); - return 0; + retval = 0; error: VIR_FREE(pvname); VIR_FREE(vgname); - return -1; + return retval; } /*