diff options
author | Sanskriti Sharma <sansharm@redhat.com> | 2018-10-02 10:29:11 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2018-10-08 13:23:45 -0400 |
commit | faedbf3fd19f2511a39397f76359e4cc6ee93072 (patch) | |
tree | 6728a71d51b15c427bcfa141bf0daa837e7980dc | |
parent | ce49d8436cffa9b7a6a5f110879d53e89dbc6746 (diff) |
perf tools: Cleanup trace-event-info 'tdata' leak
Free tracing_data structure in tracing_data_get() error paths.
Fixes the following coverity complaint:
Error: RESOURCE_LEAK (CWE-772):
leaked_storage: Variable "tdata" going out of scope leaks the storage
Signed-off-by: Sanskriti Sharma <sansharm@redhat.com>
Reviewed-by: Jiri Olsa <jolsa@kernel.org>
Cc: Joe Lawrence <joe.lawrence@redhat.com>
Link: http://lkml.kernel.org/r/1538490554-8161-3-git-send-email-sansharm@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/util/trace-event-info.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/perf/util/trace-event-info.c b/tools/perf/util/trace-event-info.c index 7b0ca7cbb7de..8ad8e755127b 100644 --- a/tools/perf/util/trace-event-info.c +++ b/tools/perf/util/trace-event-info.c | |||
@@ -531,12 +531,14 @@ struct tracing_data *tracing_data_get(struct list_head *pattrs, | |||
531 | "/tmp/perf-XXXXXX"); | 531 | "/tmp/perf-XXXXXX"); |
532 | if (!mkstemp(tdata->temp_file)) { | 532 | if (!mkstemp(tdata->temp_file)) { |
533 | pr_debug("Can't make temp file"); | 533 | pr_debug("Can't make temp file"); |
534 | free(tdata); | ||
534 | return NULL; | 535 | return NULL; |
535 | } | 536 | } |
536 | 537 | ||
537 | temp_fd = open(tdata->temp_file, O_RDWR); | 538 | temp_fd = open(tdata->temp_file, O_RDWR); |
538 | if (temp_fd < 0) { | 539 | if (temp_fd < 0) { |
539 | pr_debug("Can't read '%s'", tdata->temp_file); | 540 | pr_debug("Can't read '%s'", tdata->temp_file); |
541 | free(tdata); | ||
540 | return NULL; | 542 | return NULL; |
541 | } | 543 | } |
542 | 544 | ||