Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-12-09 06:27:05 +0300
committerChristopher Faylor <me@cgf.cx>2003-12-09 06:27:05 +0300
commit7176387b4fadccb76d53f2298cddcca1cad331b5 (patch)
tree45f0f4d6c2074a2501061b4bb959f7846afe7b31 /winsup/cygwin
parent91ec94b67c7470b2c3bdcfae3301087fbd1fa4b8 (diff)
* pinfo.cc (_pinfo::set_ctty): Don't copy over existing ctty if it is active.
Diffstat (limited to 'winsup/cygwin')
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/pinfo.cc5
2 files changed, 6 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 84def7ec0..78e66fbb5 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2003-12-08 Christopher Faylor <cgf@redhat.com>
+ * pinfo.cc (_pinfo::set_ctty): Don't copy over existing ctty if it is
+ active.
+
+2003-12-08 Christopher Faylor <cgf@redhat.com>
+
* thread.cc (pthread::precreate): Delete duplicate setting of
cancel_event.
diff --git a/winsup/cygwin/pinfo.cc b/winsup/cygwin/pinfo.cc
index b0f58b484..dfd140f0f 100644
--- a/winsup/cygwin/pinfo.cc
+++ b/winsup/cygwin/pinfo.cc
@@ -257,7 +257,6 @@ pinfo::set_acl()
void
_pinfo::set_ctty (tty_min *tc, int flags, fhandler_tty_slave *fhctty)
{
- int initial_ctty = ctty;
if ((ctty < 0 || ctty == tc->ntty) && !(flags & O_NOCTTY))
{
ctty = tc->ntty;
@@ -277,10 +276,8 @@ _pinfo::set_ctty (tty_min *tc, int flags, fhandler_tty_slave *fhctty)
sid = tc->getsid ();
if (tc->getpgid () == 0)
tc->setpgid (pgid);
- if (fhctty)
+ if (fhctty && !cygheap->ctty.get_io_handle ())
cygheap->ctty = *fhctty;
- else if (initial_ctty < 0)
- assert (cygheap->ctty.get_io_handle () == NULL);
}
}