From 874c503ca644fa2a26684d61b252fe880d31e3bf Mon Sep 17 00:00:00 2001 From: Arnaldo Carvalho de Melo Date: Sun, 9 May 2010 12:01:05 -0300 Subject: [PATCH] --- yaml --- r: 191311 b: refs/heads/master c: 39d1e1b1e26dc84d40bf2792287d0d61e44b57df h: refs/heads/master i: 191309: 04844108e61585d3fa6f75acd387751bd53a27d5 191307: ca614a3aea6e0240e3a08bb7e60e9035e015de2f 191303: 22d8c2f248e107c4279954facdcadaeee43e60c2 191295: 0d5e83c79668300bf3b3b88247b9d6dfcda2528e v: v3 --- [refs] | 2 +- trunk/tools/perf/builtin-report.c | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index 3167ec73c668..2e9d80e26d6a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 139633c6a43781cd44798165b0472a34bf53a1e8 +refs/heads/master: 39d1e1b1e26dc84d40bf2792287d0d61e44b57df diff --git a/trunk/tools/perf/builtin-report.c b/trunk/tools/perf/builtin-report.c index 1cae87713792..3a70c5807c04 100644 --- a/trunk/tools/perf/builtin-report.c +++ b/trunk/tools/perf/builtin-report.c @@ -83,7 +83,7 @@ static int perf_session__add_hist_entry(struct perf_session *self, struct map_symbol *syms = NULL; struct symbol *parent = NULL; bool hit; - int err; + int err = -ENOMEM; struct hist_entry *he; struct event_stat_id *stats; struct perf_event_attr *attr; @@ -101,26 +101,24 @@ static int perf_session__add_hist_entry(struct perf_session *self, else stats = get_stats(self, data->id, 0, 0); if (stats == NULL) - return -ENOMEM; + goto out_free_syms; he = __perf_session__add_hist_entry(&stats->hists, al, parent, data->period, &hit); if (he == NULL) - return -ENOMEM; + goto out_free_syms; if (hit) __perf_session__add_count(he, al, data->period); + err = 0; if (symbol_conf.use_callchain) { if (!hit) callchain_init(he->callchain); err = append_chain(he->callchain, data->callchain, syms); - free(syms); - - if (err) - return err; } - - return 0; +out_free_syms: + free(syms); + return err; } static int add_event_total(struct perf_session *session,