summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/fhandler_termios.cc2
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index c2a5ee3d8..5e3dbdabc 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2013-10-18 Christopher Faylor <me.cygwin2013@cgf.cx>
+ * fhandler_termios.cc (tty_min::kill_pgrp): Don't send a signal to
+ myself if this process is exiting.
+
+2013-10-18 Christopher Faylor <me.cygwin2013@cgf.cx>
+
* tty.cc (tty_list::allocate): Set sid to 0 rather than -1 since -1 is
an error condition.
diff --git a/winsup/cygwin/fhandler_termios.cc b/winsup/cygwin/fhandler_termios.cc
index fdf758918..d0751f81f 100644
--- a/winsup/cygwin/fhandler_termios.cc
+++ b/winsup/cygwin/fhandler_termios.cc
@@ -137,7 +137,7 @@ tty_min::kill_pgrp (int sig)
if (!p->exists () || p->ctty != ntty || p->pgid != pgid)
continue;
if (p == myself)
- killself = sig != __SIGSETPGRP;
+ killself = sig != __SIGSETPGRP && !exit_state;
else
sig_send (p, si);
}