aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util
diff options
context:
space:
mode:
authorThomas Jarosch <thomas.jarosch@intra2net.com>2013-01-25 11:20:47 +0100
committerArnaldo Carvalho de Melo <acme@redhat.com>2013-01-30 10:40:05 -0300
commit0b9e01a4f0d1c8277da6824fe060ccb0434d2fde (patch)
tree70016430c90da177f7bceea1663c5318ae13a689 /tools/perf/util
parentperf sort: Use pclose() instead of fclose() on pipe stream (diff)
downloadlinux-dev-0b9e01a4f0d1c8277da6824fe060ccb0434d2fde.tar.xz
linux-dev-0b9e01a4f0d1c8277da6824fe060ccb0434d2fde.zip
perf tools: Fix memory leak on error
cppcheck reported: [util/event.c:480]: (error) Memory leak: event Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com> Link: http://lkml.kernel.org/r/2717013.8dV0naNhAV@storm Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util')
-rw-r--r--tools/perf/util/event.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/perf/util/event.c b/tools/perf/util/event.c
index 3cf2c3e0605f..5cd13d768cec 100644
--- a/tools/perf/util/event.c
+++ b/tools/perf/util/event.c
@@ -476,8 +476,10 @@ int perf_event__synthesize_kernel_mmap(struct perf_tool *tool,
}
}
- if (kallsyms__parse(filename, &args, find_symbol_cb) <= 0)
+ if (kallsyms__parse(filename, &args, find_symbol_cb) <= 0) {
+ free(event);
return -ENOENT;
+ }
map = machine->vmlinux_maps[MAP__FUNCTION];
size = snprintf(event->mmap.filename, sizeof(event->mmap.filename),