From ceaa2e1738f9d0ee1280899af6dfee64f72c405a Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Mon, 12 Sep 2016 12:34:10 +0100 Subject: [PATCH] aubinator: rework print_help() Rather than using platform specific methods to retrieve the program name pass it explicitly. The function is called directly from main(). Similarly - basename comes in two versions POSIX (can modify string, always pass a copy) and GNU (never modifies the string). Just printout the complete program name, esp. since the program is not meant to be installed. Thus using $basename is unlikely to work, not to mention it is misleading. Reported-by: Timothy Arceri Signed-off-by: Emil Velikov Reviewed-by: Jonathan Gray --- src/intel/tools/aubinator.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/intel/tools/aubinator.c b/src/intel/tools/aubinator.c index fe1f369..9d29b68 100644 --- a/src/intel/tools/aubinator.c +++ b/src/intel/tools/aubinator.c @@ -30,7 +30,6 @@ #include #include #include -#include #include #include #include @@ -1012,14 +1011,8 @@ setup_pager(void) } static void -print_help(FILE *file) +print_help(const char *progname, FILE *file) { - const char *progname; -#if defined(__GLIBC__) || defined(__CYGWIN__) - progname = program_invocation_short_name; -#else - progname = getprogname(); -#endif fprintf(file, "Usage: %s [OPTION]... FILE\n" "Decode aub file contents.\n\n" @@ -1031,7 +1024,7 @@ print_help(FILE *file) " if omitted), 'always', or 'never'\n" " --no-pager don't launch pager\n" " --no-offsets don't print instruction offsets\n", - basename(progname)); + progname); } static bool @@ -1062,7 +1055,7 @@ int main(int argc, char *argv[]) char gen_file[256], gen_val[24]; if (argc == 1) { - print_help(stderr); + print_help(argv[0], stderr); exit(EXIT_FAILURE); } @@ -1094,7 +1087,7 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } } else if (strcmp(argv[i], "--help") == 0) { - print_help(stdout); + print_help(argv[0], stdout); exit(EXIT_SUCCESS); } else { if (argv[i][0] == '-') { @@ -1174,7 +1167,7 @@ int main(int argc, char *argv[]) disasm = gen_disasm_create(pci_id); if (argv[i] == NULL) { - print_help(stderr); + print_help(argv[0], stderr); exit(EXIT_FAILURE); } else { file = aub_file_open(argv[i]); -- 2.7.4