* child_info.h (_CI_SAW_CTRL_C): New enum.
(CURR_CHILD_INFO_MAGIC): Reset. (saw_ctrl_c): New function. (set_saw_ctrl_c): Ditto. * sigproc.cc (child_info::proc_retry): Return EXITCODE_OK if we get STATUS_CONTROL_C_EXIT and we actually saw a CTRL-C. * spawn.cc (dwExeced): Delete. (chExeced): New variable. (spawn_guts): Set chExeced; * exceptions.cc (dwExeced): Delete declaration. (chExeced): Declare. (ctrl_c_handler): Detect if we're an exec stub process and set a flag, if so. * fhandler_tty.cc (fhandler_tty_common::__release_output_mutex): Add extra DEBUGGING test. * pinfo.cc: Fix comment.
This commit is contained in:
@ -52,7 +52,7 @@ static suffix_info dll_suffixes[] =
|
||||
};
|
||||
|
||||
HANDLE hExeced;
|
||||
DWORD dwExeced;
|
||||
child_info_spawn *chExeced;
|
||||
|
||||
/* Add .exe to PROG if not already present and see if that exists.
|
||||
If not, return PROG (converted from posix to win32 rules if necessary).
|
||||
@ -583,7 +583,8 @@ loop:
|
||||
pid_t pid;
|
||||
if (mode == _P_OVERLAY)
|
||||
{
|
||||
myself->dwProcessId = dwExeced = pi.dwProcessId;
|
||||
chExeced = &ch; /* FIXME: there's a race here if a user sneaks in CTRL-C */
|
||||
myself->dwProcessId = pi.dwProcessId;
|
||||
strace.execing = 1;
|
||||
myself.hProcess = hExeced = pi.hProcess;
|
||||
strcpy (myself->progname, real_path); // FIXME: race?
|
||||
|
Reference in New Issue
Block a user