We might be asked to ponder mate or stalemate position.
This being the case, simply wait for stop or ponderhit.
Currently we crash.
UCI specs aren't clear on the issue, but it cost nothing to
add little check.
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
// searchMoves are verified, copied, scored and sorted
RootMoveList rml(p, searchMoves);
+ if (rml.move_count() == 0)
+ {
+ if (PonderSearch)
+ wait_for_stop_or_ponderhit();
+
+ return pos.is_check()? -VALUE_MATE : VALUE_DRAW;
+ }
+
// Print RootMoveList c'tor startup scoring to the standard output,
// so that we print information also for iteration 1.
std::cout << "info depth " << 1 << "\ninfo depth " << 1