From de4516b51eec2b430771f632abe76a31374a2b25 Mon Sep 17 00:00:00 2001 From: Kamalesh Babulal Date: Sat, 19 Mar 2022 12:11:50 +0530 Subject: [PATCH] api.c: fix a memory leak in cgroup_init() temp_ent is not free'ed in the error path if cgroup_process_v1_mnt() or cgroup_process_v2_mnt() fails. Move the free'ing of temp_ent to error path. Signed-off-by: Kamalesh Babulal Signed-off-by: Tom Hromatka --- src/api.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/api.c b/src/api.c index 108417cb..89b59ea7 100644 --- a/src/api.c +++ b/src/api.c @@ -1416,8 +1416,6 @@ int cgroup_init(void) } } - free(temp_ent); - if (!found_mnt) { cg_mount_table[0].name[0] = '\0'; ret = ECGROUPNOTMOUNTED; @@ -1436,6 +1434,9 @@ unlock_exit: if (proc_mount) fclose(proc_mount); + if (temp_ent) + free(temp_ent); + for (i = 0; controllers[i]; i++) { free(controllers[i]); controllers[i] = NULL; -- 2.47.2