diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-12-26 15:41:15 -0500 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-12-27 13:17:00 -0500 |
commit | 046625231a0397f1776eb353a4ec9ff142cd2f6b (patch) | |
tree | 6ce7ab043539d2432b135bc61f39febb3a032039 /tools/perf/ui | |
parent | f5385650c02cd4373c4124c8a8fac3b5f9851e7f (diff) |
perf tools: Introduce zfree
For the frequent idiom of:
free(ptr);
ptr = NULL;
Make it expect a pointer to the pointer being freed, so that it becomes
clear at first sight that the variable being freed is being modified.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-pfw02ezuab37kha18wlut7ir@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui')
-rw-r--r-- | tools/perf/ui/browser.c | 6 | ||||
-rw-r--r-- | tools/perf/ui/browsers/hists.c | 6 | ||||
-rw-r--r-- | tools/perf/ui/gtk/util.c | 3 |
3 files changed, 5 insertions, 10 deletions
diff --git a/tools/perf/ui/browser.c b/tools/perf/ui/browser.c index 94223d404f43..d11541d4d7d7 100644 --- a/tools/perf/ui/browser.c +++ b/tools/perf/ui/browser.c | |||
@@ -256,8 +256,7 @@ int ui_browser__show(struct ui_browser *browser, const char *title, | |||
256 | __ui_browser__show_title(browser, title); | 256 | __ui_browser__show_title(browser, title); |
257 | 257 | ||
258 | browser->title = title; | 258 | browser->title = title; |
259 | free(browser->helpline); | 259 | zfree(&browser->helpline); |
260 | browser->helpline = NULL; | ||
261 | 260 | ||
262 | va_start(ap, helpline); | 261 | va_start(ap, helpline); |
263 | err = vasprintf(&browser->helpline, helpline, ap); | 262 | err = vasprintf(&browser->helpline, helpline, ap); |
@@ -272,8 +271,7 @@ void ui_browser__hide(struct ui_browser *browser) | |||
272 | { | 271 | { |
273 | pthread_mutex_lock(&ui__lock); | 272 | pthread_mutex_lock(&ui__lock); |
274 | ui_helpline__pop(); | 273 | ui_helpline__pop(); |
275 | free(browser->helpline); | 274 | zfree(&browser->helpline); |
276 | browser->helpline = NULL; | ||
277 | pthread_mutex_unlock(&ui__lock); | 275 | pthread_mutex_unlock(&ui__lock); |
278 | } | 276 | } |
279 | 277 | ||
diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c index 0d9dd99507ee..022d1731b801 100644 --- a/tools/perf/ui/browsers/hists.c +++ b/tools/perf/ui/browsers/hists.c | |||
@@ -1267,10 +1267,8 @@ static inline void free_popup_options(char **options, int n) | |||
1267 | { | 1267 | { |
1268 | int i; | 1268 | int i; |
1269 | 1269 | ||
1270 | for (i = 0; i < n; ++i) { | 1270 | for (i = 0; i < n; ++i) |
1271 | free(options[i]); | 1271 | zfree(&options[i]); |
1272 | options[i] = NULL; | ||
1273 | } | ||
1274 | } | 1272 | } |
1275 | 1273 | ||
1276 | /* Check whether the browser is for 'top' or 'report' */ | 1274 | /* Check whether the browser is for 'top' or 'report' */ |
diff --git a/tools/perf/ui/gtk/util.c b/tools/perf/ui/gtk/util.c index 696c1fbe4248..52e7fc48af9f 100644 --- a/tools/perf/ui/gtk/util.c +++ b/tools/perf/ui/gtk/util.c | |||
@@ -23,8 +23,7 @@ int perf_gtk__deactivate_context(struct perf_gtk_context **ctx) | |||
23 | if (!perf_gtk__is_active_context(*ctx)) | 23 | if (!perf_gtk__is_active_context(*ctx)) |
24 | return -1; | 24 | return -1; |
25 | 25 | ||
26 | free(*ctx); | 26 | zfree(ctx); |
27 | *ctx = NULL; | ||
28 | return 0; | 27 | return 0; |
29 | } | 28 | } |
30 | 29 | ||