From: Stéphane Nicolet Date: Fri, 9 Feb 2018 00:10:27 +0000 (+0100) Subject: Fix bug for 'eval' command in terminal X-Git-Url: http://winboard.nl/cgi-bin?a=commitdiff_plain;h=211ebc5c7abda34efce3a9d8a9382ce94a7cdb76;p=fairystockfish.git Fix bug for 'eval' command in terminal The 'eval' debugging command in Terminal did not initialize the Eval::Contempt variable, leading to random output during debugging sessions (normal search was unaffected by the bug). Example of session where the two 'eval' commands should give the same output, but did not: ./stockfish position startpos d eval go depth 20 d eval The bug is fixed by initializing Eval::Contempt to SCORE_ZERO in Eval::trace No functional change. --- diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 60eee7a..c69f675 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -923,7 +923,10 @@ std::string Eval::trace(const Position& pos) { std::memset(scores, 0, sizeof(scores)); - Value v = Evaluation(pos).value() + Eval::Tempo; + Eval::Contempt = SCORE_ZERO; + + Value v = Eval::Tempo + Evaluation(pos).value(); + v = pos.side_to_move() == WHITE ? v : -v; // White's point of view std::stringstream ss;