aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2021-07-26 07:34:37 -0600
committerTom Tromey <tromey@adacore.com>2021-07-26 07:34:37 -0600
commit0b73bf7fa3f5f84f0dc44bd3f971520474e020e3 (patch)
tree932a1e939d66d16cb2dfaa1827a76256970c8c82 /gdb
parentc9bd98593b785d9bf5f39c7aa74ed0226a23b830 (diff)
downloadgdb-0b73bf7fa3f5f84f0dc44bd3f971520474e020e3.zip
gdb-0b73bf7fa3f5f84f0dc44bd3f971520474e020e3.tar.gz
gdb-0b73bf7fa3f5f84f0dc44bd3f971520474e020e3.tar.bz2
Fix the Windows build
The gdb build was broken on Windows after the patch to change get_inferior_cwd. This patch fixes the build.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/windows-nat.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 9526149..0c2d55e 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -2553,14 +2553,16 @@ windows_nat_target::create_inferior (const char *exec_file,
PROCESS_INFORMATION pi;
BOOL ret;
DWORD flags = 0;
- const char *inferior_tty = current_inferior ()->tty ();
+ const std::string &inferior_tty = current_inferior ()->tty ();
if (!exec_file)
error (_("No executable specified, use `target exec'."));
- const char *inferior_cwd = current_inferior ()->cwd ();
+ const char *inferior_cwd = current_inferior ()->cwd ().c_str ();
std::string expanded_infcwd;
- if (inferior_cwd != NULL)
+ if (*inferior_cwd == '\0')
+ inferior_cwd = nullptr;
+ else
{
expanded_infcwd = gdb_tilde_expand (inferior_cwd);
/* Mirror slashes on inferior's cwd. */
@@ -2652,14 +2654,14 @@ windows_nat_target::create_inferior (const char *exec_file,
w32_env = NULL;
}
- if (inferior_tty == nullptr)
+ if (inferior_tty.empty ())
tty = ostdin = ostdout = ostderr = -1;
else
{
- tty = open (inferior_tty, O_RDWR | O_NOCTTY);
+ tty = open (inferior_tty.c_str (), O_RDWR | O_NOCTTY);
if (tty < 0)
{
- print_sys_errmsg (inferior_tty, errno);
+ print_sys_errmsg (inferior_tty.c_str (), errno);
ostdin = ostdout = ostderr = -1;
}
else
@@ -2725,18 +2727,18 @@ windows_nat_target::create_inferior (const char *exec_file,
}
/* If not all the standard streams are redirected by the command
line, use INFERIOR_TTY for those which aren't. */
- if (inferior_tty != nullptr
+ if (!inferior_tty.empty ()
&& !(fd_inp >= 0 && fd_out >= 0 && fd_err >= 0))
{
SECURITY_ATTRIBUTES sa;
sa.nLength = sizeof(sa);
sa.lpSecurityDescriptor = 0;
sa.bInheritHandle = TRUE;
- tty = CreateFileA (inferior_tty, GENERIC_READ | GENERIC_WRITE,
+ tty = CreateFileA (inferior_tty.c_str (), GENERIC_READ | GENERIC_WRITE,
0, &sa, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if (tty == INVALID_HANDLE_VALUE)
warning (_("Warning: Failed to open TTY %s, error %#x."),
- inferior_tty, (unsigned) GetLastError ());
+ inferior_tty.c_str (), (unsigned) GetLastError ());
}
if (redirected || tty != INVALID_HANDLE_VALUE)
{