Re: [PATCH] perf tool: fix trivial memory leak while calling system_path()
From: Felipe Balbi <hidden>
Date: 2012-09-05 13:54:05
Also in:
lkml
Attachments
- signature.asc [application/pgp-signature] 836 bytes
From: Felipe Balbi <hidden>
Date: 2012-09-05 13:54:05
Also in:
lkml
Hi, On Wed, Sep 05, 2012 at 09:48:54PM +0800, liang xie wrote:
A trivial memory leak fix while calling system_path Signed-off-by: Liang Xie <redacted> --- tools/perf/util/exec_cmd.c | 6 ++++-- tools/perf/util/help.c | 1 + 2 files changed, 5 insertions(+), 2 deletions(-)diff --git a/tools/perf/util/exec_cmd.c b/tools/perf/util/exec_cmd.c index 7adf4ad..790cc95 100644 --- a/tools/perf/util/exec_cmd.c +++ b/tools/perf/util/exec_cmd.c@@ -83,8 +83,8 @@ void setup_path(void) { const char *old_path = getenv("PATH"); struct strbuf new_path = STRBUF_INIT; - - add_path(&new_path, perf_exec_path()); + const char *exec_path = perf_exec_path(); + add_path(&new_path, exec_path); add_path(&new_path, argv0_path); if (old_path)@@ -95,6 +95,8 @@ void setup_path(void) setenv("PATH", new_path.buf, 1); strbuf_release(&new_path); + if (exec_path)
free(NULL) is safe, the check isn't needed.
+ free((void *)exec_path);
this cast doesn't look necessary either. -- balbi