* 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

@ -133,10 +133,8 @@ strace::vsprntf (char *buf, const char *func, const char *infmt, va_list ap)
if ((p = strrchr (progname, '.')) != NULL && strcasematch (p, ".exe"))
*p = '\000';
p = progname;
count = __small_sprintf (buf, fmt, p && *p ? p : "?",
myself->pid,
myself->dwProcessId != GetCurrentProcessId ()
? "!" : "");
count = __small_sprintf (buf, fmt, p && *p ? p : "?", myself->pid,
execing ? "!" : "");
if (func)
count += getfunc (buf + count, func);
}
@ -177,6 +175,8 @@ strace::write (unsigned category, const char *buf, int count)
__small_sprintf (outbuf, "cYg%08x", strlen (outstuff) + 1);
outstuff[-1] = ' ';
OutputDebugString (outbuf);
#undef outstuff
#undef PREFIX
}
/* Printf function used when tracing system calls.