From: Serge Hallyn Date: Mon, 8 Jun 2015 15:33:22 +0000 (-0500) Subject: coverity: fix use-after-free in cgmanager. X-Git-Tag: lxc-1.0.8~119 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b76e84624117aae0bb1f8b469ed598b0708059e4;p=thirdparty%2Flxc.git coverity: fix use-after-free in cgmanager. Signed-off-by: Serge Hallyn --- diff --git a/src/lxc/cgmanager.c b/src/lxc/cgmanager.c index 2ae7bae72..bc61950ab 100644 --- a/src/lxc/cgmanager.c +++ b/src/lxc/cgmanager.c @@ -1243,8 +1243,10 @@ static bool collect_subsytems(void) } } fclose(f); + f = NULL; free(line); + line = NULL; collected: if (!nr_subsystems) { @@ -1257,8 +1259,10 @@ collected: if (!cgroup_use && errno != 0) goto out_good; if (cgroup_use) { - if (!verify_and_prune(cgroup_use)) - goto out_free; + if (!verify_and_prune(cgroup_use)) { + free_subsystems(); + return false; + } subsystems_inone[0] = NIH_MUST( strdup(cgroup_use) ); cgm_all_controllers_same = false; }