* sigproc.cc (_cygtls::remove_wq): Reset thread_ev inside of lock. Set to NULL

when done.
This commit is contained in:
Christopher Faylor 2014-03-09 19:25:38 +00:00
parent e8036b41ab
commit bc7c78b225
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2014-03-09 Christopher Faylor <me.cygwin2014@cgf.cx>
* sigproc.cc (_cygtls::remove_wq): Reset thread_ev inside of lock. Set
to NULL when done.
2014-03-09 Christopher Faylor <me.cygwin2014@cgf.cx>
* fhandler_console.cc (fhandler_console::char_command): Properly use

View File

@ -336,6 +336,8 @@ _cygtls::remove_wq (DWORD wait)
if (exit_state < ES_FINAL && waitq_head.next && sync_proc_subproc
&& sync_proc_subproc.acquire (wait))
{
ForceCloseHandle1 (wq.thread_ev, wq_ev);
wq.thread_ev = NULL;
for (waitq *w = &waitq_head; w->next != NULL; w = w->next)
if (w->next == &wq)
{
@ -344,7 +346,6 @@ _cygtls::remove_wq (DWORD wait)
}
sync_proc_subproc.release ();
}
ForceCloseHandle1 (wq.thread_ev, wq_ev);
}
}