* pinfo.cc (pinfo::exit): Call TerminateProcess to avoid potential
busy loop in ntdll.dll when calling ExitProcess. Only call ExitProcess as a fallback.
This commit is contained in:
@@ -210,6 +210,8 @@ pinfo::exit (DWORD n)
|
||||
if (!self->cygstarted)
|
||||
exitcode = ((exitcode & 0xff) << 8) | ((exitcode >> 8) & 0xff);
|
||||
sigproc_printf ("Calling ExitProcess n %p, exitcode %p", n, exitcode);
|
||||
if (!TerminateProcess (GetCurrentProcess (), exitcode))
|
||||
system_printf ("TerminateProcess failed, %E");
|
||||
ExitProcess (exitcode);
|
||||
}
|
||||
# undef self
|
||||
|
Reference in New Issue
Block a user