diff options
author | Christopher Faylor <me@cgf.cx> | 2001-09-08 01:32:07 +0400 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2001-09-08 01:32:07 +0400 |
commit | 1ff9f4b9373620aa923412d7aa90b8d04d940199 (patch) | |
tree | 878c4a44487d2fe17137a6d6088a327ada14247b /winsup/cygwin/dcrt0.cc | |
parent | b2d319cb3eaf0c1a139ee1586fa43d5250d5a058 (diff) |
* cygheap.h (init_cygheap): Move heap pointers here.
* include/sys/cygwin.h (perprocess): Remove heap pointers.
* dcrt0.cc (__cygwin_user_data): Reflect obsolete perprocess stuff.
(_dll_crt0): Don't initialize heap pointers.
(cygwin_dll_init): Ditto.
(release_upto): Use heap pointers from cygheap.
* heap.h: Ditto.
* fork.cc (fork_parent): Ditto. Don't set heap pointers in ch.
(fork_child): Remove obsolete sigproc_fixup_after_fork.
* shared.cc (memory_init): Reorganize so that cygheap initialization is called
prior to regular heap since regular heap uses cygheap now.
* sigproc.cc (proc_subproc): Eliminate zombies allocation.
(sigproc_init): Move zombies alloation here. Don't free up array on fork, just
reuse it.
(sigproc_fixup_after_fork): Eliminate.
* sigproc.h: Ditto.
* include/cygwin/version.h: Reflect change to perprocess structure.
Diffstat (limited to 'winsup/cygwin/dcrt0.cc')
-rw-r--r-- | winsup/cygwin/dcrt0.cc | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index ae95c8b4f..4f278cee1 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -101,9 +101,9 @@ extern "C" /* calloc */ export_calloc, /* premain */ {NULL, NULL, NULL, NULL}, /* run_ctors_p */ 0, - /* unused */ { 0, 0, 0}, - /* heapbase */ NULL, /* heapptr */ NULL, /* heaptop */ NULL, - /* unused1 */ 0, /* forkee */ 0, /* hmodule */ NULL, + /* unused */ {0, 0, 0, 0, 0, 0, 0}, + /* forkee */ 0, + /* hmodule */ NULL, /* api_major */ CYGWIN_VERSION_API_MAJOR, /* api_minor */ CYGWIN_VERSION_API_MINOR, /* unused2 */ {0, 0, 0, 0, 0}, @@ -683,9 +683,6 @@ dll_crt0_1 () cygheap_fixup_in_child (child_proc_info, 0); alloc_stack (fork_info); set_myself (mypid); - user_data->heaptop = child_proc_info->heaptop; - user_data->heapbase = child_proc_info->heapbase; - user_data->heapptr = child_proc_info->heapptr; ProtectHandle (child_proc_info->forker_finished); break; case PROC_SPAWN: @@ -896,7 +893,6 @@ _dll_crt0 () main_environ = user_data->envptr; *main_environ = NULL; - user_data->heapbase = user_data->heapptr = user_data->heaptop = NULL; set_console_handler (); if (!DuplicateHandle (GetCurrentProcess (), GetCurrentProcess (), @@ -954,7 +950,6 @@ cygwin_dll_init () { static char **envp; static int _fmode; - user_data->heapbase = user_data->heapptr = user_data->heaptop = NULL; if (!DuplicateHandle (GetCurrentProcess (), GetCurrentProcess (), GetCurrentProcess (), &hMainProc, 0, FALSE, |