* cygheap.cc (cygheap_fixup_in_child): Don't page round cygheap copied from
parent. * dcrt0.cc (do_exit): Don't cleanup pinfo on exit. That happens automatically now. * exceptions.cc (signal_exit): Ditto. * fork.cc (fork_parent): Use stack_here value passed in from fork(). (fork): Figure out top of stack here and pass it to fork_parent. * pinfo.cc (_pinfo::record_death): Eliminate. * pinfo.h (_pinfo): Ditto. * sigproc.cc (proc_exists): Simplify. (proc_terminate): Ditto. (remove_zombie): Don't cleanup pinfo stuff. (wait_sig): Send subproc_ready signal whether execed or spawned. * spawn.cc (spawn_guts): Always create subproc_ready event. Use it for both exec and spawn. (_spawnve): Send proper mode to spawn_guts when mode != _P_OVERLAY.
This commit is contained in:
@ -1005,11 +1005,7 @@ signal_exit (int rc)
|
||||
{
|
||||
rc = EXIT_SIGNAL | (rc << 8);
|
||||
if (exit_already++)
|
||||
{
|
||||
/* We are going down - reset our process_state without locking. */
|
||||
myself->record_death ();
|
||||
ExitProcess (rc);
|
||||
}
|
||||
ExitProcess (rc);
|
||||
|
||||
/* We'd like to stop the main thread from executing but when we do that it
|
||||
causes random, inexplicable hangs. So, instead, we set up the priority
|
||||
|
Reference in New Issue
Block a user