From d3fa8e5f889cd8fdcc9029af421ca755bd20ac1e Mon Sep 17 00:00:00 2001 From: Carton He Date: Wed, 28 Aug 2013 11:19:34 +0800 Subject: libpagemap: fix memory leak in pm_process_destroy() procrank/librank not impacted because they end quickly. But other programs that use libpagemap and last for long time can easily see this memory leak. Change-Id: I8c9e9444555bef9145c9d89850987a29f15a9b3b Signed-off-by: Carton He --- libpagemap/pm_process.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'libpagemap') diff --git a/libpagemap/pm_process.c b/libpagemap/pm_process.c index 73c96492..d1f9bb78 100644 --- a/libpagemap/pm_process.c +++ b/libpagemap/pm_process.c @@ -207,9 +207,14 @@ int pm_process_workingset(pm_process_t *proc, } int pm_process_destroy(pm_process_t *proc) { + int i; + if (!proc) return -1; + for (i = 0; i < proc->num_maps; i++) { + pm_map_destroy(proc->maps[i]); + } free(proc->maps); close(proc->pagemap_fd); free(proc); -- cgit v1.2.3