From 3813c7bdba24566937cb2a3579aa227a4aff5247 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Mon, 11 Mar 2013 18:12:07 -0400 Subject: cmd/addr2line: exit 0 for --help This is what pprof expects, or else it won't use the program. And if it doesn't use the program, it gets very bad results. Fixes issue 4818. R=golang-dev, r CC=golang-dev https://codereview.appspot.com/7728043 --- src/cmd/addr2line/main.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'src/cmd/addr2line') diff --git a/src/cmd/addr2line/main.c b/src/cmd/addr2line/main.c index 6b2fe5dfe..9faadc27b 100644 --- a/src/cmd/addr2line/main.c +++ b/src/cmd/addr2line/main.c @@ -11,13 +11,19 @@ #include #include +void +printusage(int fd) +{ + fprint(fd, "usage: addr2line binary\n"); + fprint(fd, "reads addresses from standard input and writes two lines for each:\n"); + fprint(fd, "\tfunction name\n"); + fprint(fd, "\tfile:line\n"); +} + void usage(void) { - fprint(2, "usage: addr2line binary\n"); - fprint(2, "reads addresses from standard input and writes two lines for each:\n"); - fprint(2, "\tfunction name\n"); - fprint(2, "\tfile:line\n"); + printusage(2); exits("usage"); } @@ -32,6 +38,11 @@ main(int argc, char **argv) Biobuf bin, bout; char file[1024]; + if(argc > 1 && strcmp(argv[1], "--help") == 0) { + printusage(1); + exits(0); + } + ARGBEGIN{ default: usage(); -- cgit v1.2.1