---
 winsup/cygwin/fhandler_tty.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc
index 659e7b595..2a1c34f7d 100644
--- a/winsup/cygwin/fhandler_tty.cc
+++ b/winsup/cygwin/fhandler_tty.cc
@@ -137,9 +137,16 @@ force_attach_to_pcon (HANDLE h)
                /* If the process is running on a console,
                   the parent process should be attached
                   to the same console. */
-               pinfo p (myself->ppid);
+               DWORD attach_wpid;
+               if (myself->ppid == 1)
+                 attach_wpid = ATTACH_PARENT_PROCESS;
+               else
+                 {
+                   pinfo p (myself->ppid);
+                   attach_wpid = p->dwProcessId;
+                 }
                FreeConsole ();
-               if (AttachConsole (p->dwProcessId))
+               if (AttachConsole (attach_wpid))
                  {
                    pcon_attached_to = -1;
                    attach_done = true;
-- 
2.21.0

Reply via email to