summaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-annotate.c
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@kernel.org>2015-12-10 12:00:53 +0900
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-12-10 14:32:33 -0300
commit50e19ef978158a3d1f790568eccd8e4a802190c2 (patch)
treebe47750a9c0b09fad3a91f9f3bc0a27f1701f7b9 /tools/perf/builtin-annotate.c
parentd18929e9fde30c4d57ae57eb9a7f6f10b5808ca1 (diff)
downloadlinux-50e19ef978158a3d1f790568eccd8e4a802190c2.tar.bz2
perf annotate: Check argument before calling setup_browser()
This is necessary to get rid of the browser dependency from usage_with_options() and its friends. Because there's no code changing the argc and argv, it'd be ok to check it early. Signed-off-by: Namhyung Kim <namhyung@kernel.org> Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com> Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/1449716459-23004-2-git-send-email-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/builtin-annotate.c')
-rw-r--r--tools/perf/builtin-annotate.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 2bf9b3fd9e61..55f6f8dab5d4 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -343,6 +343,16 @@ int cmd_annotate(int argc, const char **argv, const char *prefix __maybe_unused)
return ret;
argc = parse_options(argc, argv, options, annotate_usage, 0);
+ if (argc) {
+ /*
+ * Special case: if there's an argument left then assume that
+ * it's a symbol filter:
+ */
+ if (argc > 1)
+ usage_with_options(annotate_usage, options);
+
+ annotate.sym_hist_filter = argv[0];
+ }
if (annotate.use_stdio)
use_browser = 0;
@@ -369,17 +379,6 @@ int cmd_annotate(int argc, const char **argv, const char *prefix __maybe_unused)
if (setup_sorting() < 0)
usage_with_options(annotate_usage, options);
- if (argc) {
- /*
- * Special case: if there's an argument left then assume that
- * it's a symbol filter:
- */
- if (argc > 1)
- usage_with_options(annotate_usage, options);
-
- annotate.sym_hist_filter = argv[0];
- }
-
ret = __cmd_annotate(&annotate);
out_delete: