diff options
author | Christopher Faylor <me@cgf.cx> | 2005-12-17 04:36:39 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2005-12-17 04:36:39 +0000 |
commit | ad02bb70e389235036436b8d3f3983b0cd5c1320 (patch) | |
tree | c13b960245c056b3e8d88e8bd718b773ea3034bb /winsup/cygwin/cygheap.cc | |
parent | a249fd1c9b238c5ff15cfa6bbd879cec9fbd372c (diff) | |
download | cygnal-ad02bb70e389235036436b8d3f3983b0cd5c1320.tar.gz cygnal-ad02bb70e389235036436b8d3f3983b0cd5c1320.tar.bz2 cygnal-ad02bb70e389235036436b8d3f3983b0cd5c1320.zip |
* winsup.h (child_copy): Change prototype to match new functionality.
* cygheap.cc (cygheap_fixup_in_child): Accommodate new child_copy arguments.
* dcrt0.cc (dll_data_start): Move definition here from fork.
(dll_data_end): Ditto.
(dll_bss_start): Ditto.
(dll_bss_end): Ditto.
(handle_fork): New function. Called when forked to deal with fork issues and
copy data to this process from the parent.
(dll_crt0_0): Call handle_fork when _PROC_FORK condition.
(dll_crt0): Don't copy user_data when we've forked. Don't zero first element
of main_environment ever.
(cygwin_dll_init): Ditto.
* fork.cc (child_copy): Rename from fork_copy and change arguments so that each
pair of things to copy gets its own descriptor.
(frok::child): Remove fixup_mmaps_after_fork call here. Move to handle_fork in
dcrt0.cc.
(frok::parent): Use child_copy rather than fork_copy and accommodate changes in
parameters.
* exceptions.cc (setup_handler): Delay test of whether we're locked until after
GetThreadContext has been called since there are apparently cases where
SuspendThread does not cause an immediate thread suspension.
Diffstat (limited to 'winsup/cygwin/cygheap.cc')
-rw-r--r-- | winsup/cygwin/cygheap.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/winsup/cygwin/cygheap.cc b/winsup/cygwin/cygheap.cc index cf64684b1..122e6207a 100644 --- a/winsup/cygwin/cygheap.cc +++ b/winsup/cygwin/cygheap.cc @@ -59,7 +59,7 @@ cygheap_fixup_in_child (bool execed) cygheap_max = child_proc_info->cygheap; cygheap = (init_cygheap *) cygheap_max; _csbrk ((char *) child_proc_info->cygheap_max - (char *) cygheap); - child_copy (child_proc_info->parent, child_proc_info->dwProcessId, "cygheap", cygheap, cygheap_max); + child_copy (child_proc_info->parent, false, "cygheap", cygheap, cygheap_max, NULL); cygheap_init (); debug_fixup_after_fork_exec (); |