aboutsummaryrefslogtreecommitdiff
path: root/gdb/exec.c
diff options
context:
space:
mode:
authorHannes Domani <ssbssa@yahoo.de>2020-05-13 12:41:51 +0200
committerHannes Domani <ssbssa@yahoo.de>2020-05-27 19:41:07 +0200
commit96445f0b66af20343e2ffed08c4da8cfac101a03 (patch)
tree92fa1c9c93b5b931c3c96da1e93a6a54b4058c86 /gdb/exec.c
parent6479bf854a468c0270bb0fcdc9d0271cca3eb5b5 (diff)
downloadgdb-96445f0b66af20343e2ffed08c4da8cfac101a03.zip
gdb-96445f0b66af20343e2ffed08c4da8cfac101a03.tar.gz
gdb-96445f0b66af20343e2ffed08c4da8cfac101a03.tar.bz2
Use errno value of first openp failure
Fixes this testsuite fail on Windows: FAIL: gdb.base/bad-file.exp: directory If both tries to open the file fail (without and with ".exe"), use the errno value of the first try. gdb/ChangeLog: 2020-05-27 Hannes Domani <ssbssa@yahoo.de> * exec.c (exec_file_attach): Use errno value of first openp failure.
Diffstat (limited to 'gdb/exec.c')
-rw-r--r--gdb/exec.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/exec.c b/gdb/exec.c
index 14c7749..ee13c5e 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -435,6 +435,7 @@ exec_file_attach (const char *filename, int from_tty)
#if defined(__GO32__) || defined(_WIN32) || defined(__CYGWIN__)
if (scratch_chan < 0)
{
+ int first_errno = errno;
char *exename = (char *) alloca (strlen (filename) + 5);
strcat (strcpy (exename, filename), ".exe");
@@ -443,6 +444,8 @@ exec_file_attach (const char *filename, int from_tty)
O_RDWR | O_BINARY
: O_RDONLY | O_BINARY,
&scratch_storage);
+ if (scratch_chan < 0)
+ errno = first_errno;
}
#endif
if (scratch_chan < 0)