diff options
author | Namhyung Kim <namhyung.kim@lge.com> | 2012-05-23 11:36:47 +0900 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2012-05-24 11:32:10 -0300 |
commit | 57d34dc5568f6ac700ef7e5c67f2bd6a8c7c4659 (patch) | |
tree | 72989e742058c212f39b184d94acbba223873a47 /tools/lib | |
parent | 00b9da7219cd027a1c51c3ef576aadbbd9fe38fe (diff) | |
download | lwn-57d34dc5568f6ac700ef7e5c67f2bd6a8c7c4659.tar.gz lwn-57d34dc5568f6ac700ef7e5c67f2bd6a8c7c4659.zip |
tools lib traceevent: Fix a possible memory leak
If event_read_fields failed in the middle, each member of
struct format_field should be freed also.
Cc: Borislav Petkov <bp@alien8.de>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1337740619-27925-11-git-send-email-namhyung.kim@lge.com
Signed-off-by: Namhyung Kim <namhyung.kim@lge.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/lib')
-rw-r--r-- | tools/lib/traceevent/event-parse.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index 33450c901e17..d598b376e3c1 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -1434,8 +1434,11 @@ static int event_read_fields(struct event_format *event, struct format_field **f fail: free_token(token); fail_expect: - if (field) + if (field) { + free(field->type); + free(field->name); free(field); + } return -1; } |