X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=engine.c;h=af6555a68fd77eb2eba7bf6330ad88fdf910aefe;hb=de010509fa0e57ba955da6512c714fbff8606af3;hp=a42c36e4c71aa81845ea6325cf1d4d5b0d3b23e3;hpb=a0f731f21d6aa26dbf7246039a1c66c2ade0533f;p=polyglot.git diff --git a/engine.c b/engine.c index a42c36e..af6555a 100644 --- a/engine.c +++ b/engine.c @@ -15,7 +15,7 @@ // variables engine_t Engine[1]; -static const int StringSize=4096; +#define StringSize ((int)4096) // functions @@ -51,12 +51,26 @@ void engine_send(engine_t * engine, const char *format, ...) { void engine_close(engine_t * engine){ char string[StringSize]; + int elapsed_time; + int ret; + int close_timeout=500; + my_log("POLYGLOT Closing engine.\n"); pipex_send_eof(engine->pipex); // TODO: Timeout - while (!engine_eof(engine)) { - engine_get(engine,string); + + elapsed_time=0; + while (!engine_eof(engine) && (elapsed_time=close_timeout){ + my_log("POLYGLOT Waited more than %dms. Moving on.\n",close_timeout); } - pipex_exit(engine->pipex); + pipex_exit(engine->pipex,200); } // engine_open()