diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index af2230ce9..299caf708 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2011-06-03 Christopher Faylor + + * pinfo.cc (_pinfo::set_ctty): Don't reset myself->{pgid,sid} if + terminal has no pgid or sid settings. + 2011-06-03 Christopher Faylor * fhandler.cc (fhandler_base_overlapped::wait_overlapped): Only raise diff --git a/winsup/cygwin/pinfo.cc b/winsup/cygwin/pinfo.cc index c81786359..8a1780c82 100644 --- a/winsup/cygwin/pinfo.cc +++ b/winsup/cygwin/pinfo.cc @@ -404,7 +404,7 @@ _pinfo::set_ctty (tty_min *tc, int flags, fhandler_termios *fh) 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 == myself->pid && tc->getpgid () && tc->getsid ()) { myself->pgid = tc->getpgid (); myself->sid = tc->getsid ();