tools lib traceevent: Fix a possible memory leak
authorNamhyung Kim <namhyung.kim@lge.com>
Wed, 23 May 2012 02:36:47 +0000 (11:36 +0900)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 24 May 2012 14:32:10 +0000 (11:32 -0300)
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>
tools/lib/traceevent/event-parse.c

index 33450c901e17b075c683a21a84180ad8da9e0dce..d598b376e3c1204a046790c41083949ffdd64140 100644 (file)
@@ -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;
 }