/*!!if (signal) GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, cp->pid);*/\r
\r
/* [AS] Special termination modes for misbehaving programs... */\r
- if( signal == 9 ) { \r
+ if( signal & 8 ) { \r
result = TerminateProcess( cp->hProcess, 0 );\r
\r
if ( appData.debugMode) {\r
fprintf( debugFP, "Terminating process %lu, result=%d\n", cp->pid, result );\r
}\r
}\r
- else if( signal == 10 ) {\r
- DWORD dw = WaitForSingleObject( cp->hProcess, 3*1000 ); // Wait 3 seconds at most\r
+ else if( signal & 4 ) {\r
+ DWORD dw = WaitForSingleObject( cp->hProcess, appData.delayAfterQuit*1000 + 50 ); // Wait 3 seconds at most\r
\r
if( dw != WAIT_OBJECT_0 ) {\r
result = TerminateProcess( cp->hProcess, 0 );\r