diff options
author | Christopher Faylor <me@cgf.cx> | 2005-12-13 19:01:57 +0300 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-12-13 19:01:57 +0300 |
commit | 2c8fd4069587c530504cbc66e63371bed8ccb8d6 (patch) | |
tree | 104f7fb056c2c7ef29128a1e2b8abdaa27f0955b | |
parent | 1f3a4b849693e397d052f276ac11e1633900175d (diff) |
* cygtls.cc (_cygtls::remove): Don't bother if we're exiting.
* sigproc.cc (_cygtls::remove_wq): Ditto.
-rw-r--r-- | winsup/cygwin/ChangeLog | 5 | ||||
-rw-r--r-- | winsup/cygwin/cygtls.cc | 2 | ||||
-rw-r--r-- | winsup/cygwin/sigproc.cc | 3 |
3 files changed, 8 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index aae9a4a9f..f4aa368fd 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,10 @@ 2005-12-13 Christopher Faylor <cgf@timesys.com> + * cygtls.cc (_cygtls::remove): Don't bother if we're exiting. + * sigproc.cc (_cygtls::remove_wq): Ditto. + +2005-12-13 Christopher Faylor <cgf@timesys.com> + * fhandler_tty.cc (fhandler_tty::open): Enhance comment. 2005-12-13 Corinna Vinschen <corinna@vinschen.de> diff --git a/winsup/cygwin/cygtls.cc b/winsup/cygwin/cygtls.cc index 568c5af23..e8e846e54 100644 --- a/winsup/cygwin/cygtls.cc +++ b/winsup/cygwin/cygtls.cc @@ -147,7 +147,7 @@ void _cygtls::remove (DWORD wait) { debug_printf ("wait %p", wait); - if (!locals.exitsock) + if (!locals.exitsock || exit_state >= ES_FINAL) return; if (wait) { diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 2c3652c6f..d719b3334 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -355,7 +355,8 @@ out1: void _cygtls::remove_wq (DWORD wait) { - if (sync_proc_subproc && sync_proc_subproc.acquire (wait)) + if (exit_state < ES_FINAL && sync_proc_subproc + && sync_proc_subproc.acquire (wait)) { for (waitq *w = &waitq_head; w->next != NULL; w = w->next) if (w->next == &wq) |