From: Jan Safranek Date: Mon, 7 Jun 2010 09:58:19 +0000 (+0200) Subject: Fix memory leak in cgroup_read_stats iterator X-Git-Tag: v0.37.1~67 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=857004cf15fe8326959e5bc700a15c18c72dcbed;p=thirdparty%2Flibcgroup.git Fix memory leak in cgroup_read_stats iterator getline(&line, ...) can return -1 *and* allocate memory for returned (empty) line - so be sure to free it. Signed-off-by: Jan Safranek Signed-off-by: Dhaval Giani --- diff --git a/src/api.c b/src/api.c index 7774460e..5409c9c2 100644 --- a/src/api.c +++ b/src/api.c @@ -2784,8 +2784,10 @@ static int cg_read_stat(FILE *fp, struct cgroup_stat *cgroup_stat) char *saveptr = NULL; read_bytes = getline(&line, &len, fp); - if (read_bytes == -1) - return ECGEOF; + if (read_bytes == -1) { + ret = ECGEOF; + goto out_free; + } token = strtok_r(line, " ", &saveptr); if (!token) {