]> git.sesse.net Git - stockfish/commitdiff
Fix bug for 'eval' command in terminal
authorStéphane Nicolet <cassio@free.fr>
Fri, 9 Feb 2018 00:10:27 +0000 (01:10 +0100)
committerStéphane Nicolet <cassio@free.fr>
Fri, 9 Feb 2018 00:12:08 +0000 (01:12 +0100)
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.

src/evaluate.cpp

index 60eee7a2a03e0f99af502a20ab60a3bf230faf63..c69f675d349090003f693abc0b0b76b0286eafab 100644 (file)
@@ -923,7 +923,10 @@ std::string Eval::trace(const Position& pos) {
 
   std::memset(scores, 0, sizeof(scores));
 
-  Value v = Evaluation<TRACE>(pos).value() + Eval::Tempo;
+  Eval::Contempt = SCORE_ZERO;
+
+  Value v = Eval::Tempo + Evaluation<TRACE>(pos).value();
+
   v = pos.side_to_move() == WHITE ? v : -v; // White's point of view
 
   std::stringstream ss;