From: Wang Rui Date: Mon, 1 Sep 2014 12:08:08 +0000 (+0800) Subject: lxc_container: Resolve Coverity RESOURCE_LEAK X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=5bb47e0ca7a70f25da67a8a19e99f5d732d7cdf8;p=libvirt.git lxc_container: Resolve Coverity RESOURCE_LEAK Memory is allocated for 'mnt_src' by VIR_STRDUP in the loop. Next loop it will be allocated again. So we need to free 'mnt_src' before continue the loop. Signed-off-by: Wang Rui --- diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c index 1cf2c8f38d..33d705b76a 100644 --- a/src/lxc/lxc_container.c +++ b/src/lxc/lxc_container.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2008-2013 Red Hat, Inc. + * Copyright (C) 2008-2014 Red Hat, Inc. * Copyright (C) 2008 IBM Corp. * * lxc_container.c: file description @@ -886,12 +886,14 @@ static int lxcContainerMountBasicFS(bool userns_enabled, if (ret == 0) { VIR_DEBUG("Skipping '%s' which isn't mounted in host", mnt->dst); + VIR_FREE(mnt_src); continue; } } if (mnt->skipUserNS && userns_enabled) { VIR_DEBUG("Skipping due to user ns enablement"); + VIR_FREE(mnt_src); continue; } @@ -930,6 +932,8 @@ static int lxcContainerMountBasicFS(bool userns_enabled, MS_BIND|MS_REMOUNT|MS_RDONLY); goto cleanup; } + + VIR_FREE(mnt_src); } rc = 0;