X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=winboard%2Fwinboard.c;h=d83aaaae666f29416db5d4f47b1bd4dd2ad5e6c4;hb=1a74e7cd3bed2116e9bcfc4d2b5f270895dff16c;hp=1b8460b4d8517eca8a4bcecfea84e39309a4a9d9;hpb=17b0eca6e7ae464778c2fa896710724908c6f0c1;p=xboard.git diff --git a/winboard/winboard.c b/winboard/winboard.c index 1b8460b..d83aaaa 100644 --- a/winboard/winboard.c +++ b/winboard/winboard.c @@ -9234,15 +9234,15 @@ DestroyChildProcess(ProcRef pr, int/*boolean*/ signal) /*!!if (signal) GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, cp->pid);*/ /* [AS] Special termination modes for misbehaving programs... */ - if( signal == 9 ) { + if( signal & 8 ) { result = TerminateProcess( cp->hProcess, 0 ); if ( appData.debugMode) { fprintf( debugFP, "Terminating process %lu, result=%d\n", cp->pid, result ); } } - else if( signal == 10 ) { - DWORD dw = WaitForSingleObject( cp->hProcess, 3*1000 ); // Wait 3 seconds at most + else if( signal & 4 ) { + DWORD dw = WaitForSingleObject( cp->hProcess, appData.delayAfterQuit*1000 + 50 ); // Wait 3 seconds at most if( dw != WAIT_OBJECT_0 ) { result = TerminateProcess( cp->hProcess, 0 );