This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
DOS/Windows-specific code: exec.c and symfile.c
* exec.c:exec_file_attach()
scratch_chan = openp (getenv ("PATH"), 1, filename,
write_files ? O_RDWR | O_BINARY : O_RDONLY | O_BINARY, 0,
&scratch_pathname);
#if defined(__GO32__) || defined(_WIN32) || defined(__CYGWIN__)
if (scratch_chan < 0)
{
char *exename = alloca (strlen (filename) + 5);
strcat (strcpy (exename, filename), ".exe");
scratch_chan = openp (getenv ("PATH"), 1, exename, write_files ?
O_RDWR | O_BINARY : O_RDONLY | O_BINARY, 0, &scratch_pathname);
}
#endif
This snippet wants to find `foo.exe' when `foo' is being specified.
Should we add a #define for executable extensions (defaulting to an
empty string on Unix)?
* symfile.c:symfile_bfd_open()
/* Look down path for it, allocate 2nd new malloc'd copy. */
desc = openp (getenv ("PATH"), 1, name, O_RDONLY | O_BINARY, 0, &absolute_name);
#if defined(__GO32__) || defined(_WIN32)
if (desc < 0)
{
char *exename = alloca (strlen (name) + 5);
strcat (strcpy (exename, name), ".exe");
desc = openp (getenv ("PATH"), 1, exename, O_RDONLY | O_BINARY,
0, &absolute_name);
}
#endif
This is the same issue as in exec.c:exec_file_attach() above, and
should be solved in the same way.