diff options
Diffstat (limited to 'winsup/cygwin/pinfo.cc')
-rw-r--r-- | winsup/cygwin/pinfo.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/pinfo.cc b/winsup/cygwin/pinfo.cc index d0ee4be52..c81786359 100644 --- a/winsup/cygwin/pinfo.cc +++ b/winsup/cygwin/pinfo.cc @@ -403,6 +403,12 @@ _pinfo::set_ctty (tty_min *tc, int flags, fhandler_termios *fh) lock_ttys here; syscall_printf ("attaching %s sid %d, pid %d, pgid %d, tty->pgid %d, tty->sid %d", __ctty (), sid, pid, pgid, tc->getpgid (), tc->getsid ()); + if (!cygwin_finished_initializing && !myself->cygstarted + && myself->pgid == myself->pid) + { + myself->pgid = tc->getpgid (); + myself->sid = tc->getsid (); + } pinfo p (tc->getsid ()); if (sid == pid && (!p || p->pid == pid || !p->exists ())) |