* exceptions.cc (signal_exit): Kill any executing child process if we're dying.

* path.h: Remove unneeded extern.
* spawn.cc (std_suffixes): Make static.  Don't set dwProcessId here since it
makes the process unsignalable.  Set strace flag that this is an execed process
stub.
* strace.cc (strace::vsprntf): Use strace flag to indicate when to visually
flag that this is an exec stub.
* include/sys/strace.h (strace): Add 'execing' flag.
This commit is contained in:
Christopher Faylor
2000-10-24 02:25:27 +00:00
parent 00ee2b44e7
commit 4c45a89744
6 changed files with 27 additions and 8 deletions

View File

@ -1017,6 +1017,8 @@ exit_sig:
static void
signal_exit (int rc)
{
extern HANDLE hExeced;
rc = EXIT_SIGNAL | (rc << 8);
if (exit_already++)
myself->exit (rc);
@ -1035,6 +1037,9 @@ signal_exit (int rc)
user_data->resourcelocks->Delete ();
user_data->resourcelocks->Init ();
if (hExeced)
TerminateProcess (hExeced, rc);
do_exit (rc);
}