From 6d4163a03e89beeabc9c843851ea7ffcae2b11fc Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Fri, 27 Jul 2018 14:32:36 +0200 Subject: [PATCH] lxc: Don't return early in virLXCProcessSetupInterfaces There are two places in the loop body that just return instead of jumping onto the cleanup label. The problem is the cleanup code is not ran in those cases. Signed-off-by: Michal Privoznik --- src/lxc/lxc_process.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c index d021a890f7..442756a6f1 100644 --- a/src/lxc/lxc_process.c +++ b/src/lxc/lxc_process.c @@ -544,7 +544,7 @@ static int virLXCProcessSetupInterfaces(virConnectPtr conn, net = def->nets[i]; if (virLXCProcessValidateInterface(net) < 0) - return -1; + goto cleanup; if (virDomainNetAllocateActualDevice(def, net) < 0) goto cleanup; @@ -612,7 +612,7 @@ static int virLXCProcessSetupInterfaces(virConnectPtr conn, /* Make sure all net definitions will have a name in the container */ if (!net->ifname_guest) { if (virAsprintf(&net->ifname_guest, "eth%zu", niface) < 0) - return -1; + goto cleanup; niface++; } }