diff options
author | Christopher Faylor <me@cgf.cx> | 2008-10-05 16:48:30 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2008-10-05 16:48:30 +0000 |
commit | 585697536f9e5a3600d6b0b841b1eed1ce4def2b (patch) | |
tree | a55d934a4c675ea0e21cbf5c3bccb32d7c7a0253 | |
parent | 665ca5231d6af70d6ad56af6f177663561ff7f9a (diff) | |
download | cygnal-585697536f9e5a3600d6b0b841b1eed1ce4def2b.tar.gz cygnal-585697536f9e5a3600d6b0b841b1eed1ce4def2b.tar.bz2 cygnal-585697536f9e5a3600d6b0b841b1eed1ce4def2b.zip |
* dcrt0.cc (dll_crt0_0): Don't initialize signals early when dynamically
loaded.
(dll_crt0_1): Wait until this phase to initialize signals when dynamically
loaded.
-rw-r--r-- | winsup/cygwin/ChangeLog | 7 | ||||
-rw-r--r-- | winsup/cygwin/dcrt0.cc | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 3bc0b074f..950130f13 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2008-10-05 Christopher Faylor <me+cygwin@cgf.cx> + + * dcrt0.cc (dll_crt0_0): Don't initialize signals early when + dynamically loaded. + (dll_crt0_1): Wait until this phase to initialize signals when + dynamically loaded. + 2008-09-29 Christopher Faylor <me+cygwin@cgf.cx> * thread.cc (pthread_mutex::_fixup_after_fork): Reinstate DEBUGGING diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index 565d9aa25..cd9863ecb 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -697,7 +697,8 @@ dll_crt0_0 () /* Initialize signal processing here, early, in the hopes that the creation of a thread early in the process will cause more predictability in memory layout for the main thread. */ - sigproc_init (); + if (!dynamically_loaded) + sigproc_init (); lock_process::init (); _impure_ptr = _GLOBAL_REENT; @@ -759,6 +760,8 @@ dll_crt0_0 () void dll_crt0_1 (void *) { + if (dynamically_loaded) + sigproc_init (); check_sanity_and_sync (user_data); /* Initialize malloc and then call user_shared_initialize since it relies |