From 4fde02f05a4c80c0e62345f925d9631cade358df Mon Sep 17 00:00:00 2001 From: cgf Date: Mon, 27 Mar 2006 01:10:48 +0000 Subject: [PATCH] * sigproc.cc (wait_sig): Move myself manipulation... (wait_for_sigthread): ...to here. --- winsup/cygwin/ChangeLog | 5 +++++ winsup/cygwin/sigproc.cc | 13 +++++-------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 480bcc6dd8..135bccb57a 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2006-03-26 Christopher Faylor + + * sigproc.cc (wait_sig): Move myself manipulation... + (wait_for_sigthread): ...to here. + 2006-03-24 Corinna Vinschen * fhandler_floppy.cc: Include ntdef.h and ntdll.h. diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 8de1ff8b9a..02f5387d07 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -141,6 +141,10 @@ wait_for_sigthread () api_fatal ("couldn't create signal pipe, %E"); ProtectHandle (my_readsig); myself->sendsig = my_sendsig; + + myself->process_state |= PID_ACTIVE; + myself->process_state &= ~PID_INITIALIZING; + sigproc_printf ("wait_sig_inited %p", wait_sig_inited); HANDLE hsig_inited = wait_sig_inited; WaitForSingleObject (hsig_inited, INFINITE); @@ -1130,17 +1134,10 @@ wait_sig (VOID *) sigCONT = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL); - /* Setting dwProcessId flags that this process is now capable of receiving - signals. Prior to this, dwProcessId was set to the windows pid of - of the original windows process which spawned us unless this was a - "toplevel" process. */ - myself->process_state |= PID_ACTIVE; - myself->process_state &= ~PID_INITIALIZING; - - _sig_tls = &_my_tls; sigproc_printf ("myself->dwProcessId %u", myself->dwProcessId); SetEvent (wait_sig_inited); + _sig_tls = &_my_tls; _sig_tls->init_threadlist_exceptions (); debug_printf ("entering ReadFile loop, my_readsig %p, myself->sendsig %p", my_readsig, myself->sendsig); -- 2.11.0