From 5025bf330bc3d26e93f52e59a9d2df6b08ee816a Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 8 Dec 2011 06:17:49 +0000 Subject: * dll_init.cc (dll_dllcrt0): Don't try to initialize dll data if we're dynamically loaded since fork() doesn't work in that scenario anyway. (dll_dllcrt0_1): Don't accommodate dynamically loaded dlls. * exceptions.cc (ctrl_c_handler): Don't lock the process; there's too much risk of deadlock. * sigproc.cc (_cygtls::remove_wq): Don't try to remove anything from the waitq if there is obviously nothing there. * strace.cc (strace::activate): Allow stracing dynamically loaded cygwin1.dll. --- winsup/cygwin/sigproc.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'winsup/cygwin/sigproc.cc') diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 0031f73b0..8ddc047e4 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -346,7 +346,7 @@ out1: void _cygtls::remove_wq (DWORD wait) { - if (exit_state < ES_FINAL && sync_proc_subproc + if (exit_state < ES_FINAL && waitq_head.next && sync_proc_subproc && sync_proc_subproc.acquire (wait)) { for (waitq *w = &waitq_head; w->next != NULL; w = w->next) -- cgit v1.2.3