From fe23c31f262151ce3265f5b90870d40cb6840f0a Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Fri, 24 Jul 2015 17:27:58 +0100 Subject: [PATCH] Fix failed exec error message Ref: https://sourceware.org/ml/gdb-patches/2015-07/msg00629.html This fixes the bogus command line in the error message shown when the SHELL environment variable points somewhere that's not something that resembles a shell: $ SHELL=/nonexisting gdb /home/pedro/a.out (gdb) r Starting program: /home/pedro/a.out - Cannot exec /home/pedro/a.out -c exec /home/pedro/a.out . + Cannot exec /nonexisting -c exec /home/pedro/a.out . Error: No such file or directory During startup program exited with code 127. (gdb) gdb/ChangeLog: 2015-07-24 Pedro Alves * fork-child.c (fork_inferior): Print argv[0] instead of exec_file. --- gdb/ChangeLog | 4 ++++ gdb/fork-child.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f6898fc..a3fa56f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,9 @@ 2015-07-24 Pedro Alves + * fork-child.c (fork_inferior): Print argv[0] instead of exec_file. + +2015-07-24 Pedro Alves + * aarch64-linux-nat.c: Include nat/gdb_ptrace.h instead of sys/ptrace.h. * alpha-linux-nat.c: Likewise. diff --git a/gdb/fork-child.c b/gdb/fork-child.c index 66c07fb..4ba62b0 100644 --- a/gdb/fork-child.c +++ b/gdb/fork-child.c @@ -365,7 +365,7 @@ fork_inferior (char *exec_file_arg, char *allargs, char **env, /* If we get here, it's an error. */ save_errno = errno; - fprintf_unfiltered (gdb_stderr, "Cannot exec %s", exec_file); + fprintf_unfiltered (gdb_stderr, "Cannot exec %s", argv[0]); for (i = 1; argv[i] != NULL; i++) fprintf_unfiltered (gdb_stderr, " %s", argv[i]); fprintf_unfiltered (gdb_stderr, ".\n"); -- 2.7.4