X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fthread.cpp;h=4a37d393edff4ca6f83eaa9a7f86917ec8dcc6ef;hp=ca9fe14d8fa48dfee160df9e454fbfadb2013f53;hb=44c78fdb7ad4c82656f25e4da11f3f9d56a4c6aa;hpb=ecb98a33301ee39b1470d045d33c6772fe2366d9;ds=sidebyside diff --git a/src/thread.cpp b/src/thread.cpp index ca9fe14d..4a37d393 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -433,8 +433,10 @@ void Thread::listener_loop() { if (is_searching) { // Command "quit" is the last one received by the GUI, so park the - // thread waiting for exiting. - if (cmd == "quit") + // thread waiting for exiting. Also, after a "stop", for instance on a + // ponder miss, GUI can immediately send the new position to search, + // so return to in-sync mode to avoid discarding good data. + if (cmd == "quit" || cmd == "stop") is_searching = false; do_uci_async_cmd(cmd);