summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/tty.cc2
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index a129776a1..cb1a29a9a 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2006-07-18 Christopher Faylor <cgf@timesys.com>
+
+ * tty.cc (tty_list::terminate): Don't enter the busy loop if we don't
+ own the master.
+
2006-07-18 Silvio Laguzzi <slaguzzi@data-al.de>
* sec_acl.cc (acltotext32): Add missing handling of default ACL entry
diff --git a/winsup/cygwin/tty.cc b/winsup/cygwin/tty.cc
index 018ffe08b..cfc4b086a 100644
--- a/winsup/cygwin/tty.cc
+++ b/winsup/cygwin/tty.cc
@@ -139,7 +139,7 @@ tty_list::terminate ()
int ttynum = myself->ctty;
/* Keep master running till there are connected clients */
- if (ttynum != -1 && ttys[ttynum].master_pid == myself->pid)
+ if (ttynum != -1 && tty_master && ttys[ttynum].master_pid == myself->pid)
{
tty *t = ttys + ttynum;
CloseHandle (tty_master->from_master);