From: Marco Costalba Date: Sat, 27 Apr 2013 11:07:12 +0000 (+0200) Subject: Fix a 'value > VALUE_INFINITE' assert X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=156635749bfc9fc8e71aa8c44d7bd2cfe7a78457;ds=sidebyside Fix a 'value > VALUE_INFINITE' assert This fixes an assert while testing with debug on. Assert was due to static null pruning returning value eval - futility_margin(depth, (ss-1)->futilityMoveCount) That was sometimes higher than VALUE_INFINITE triggering an assert at the caller site. Because eval con be equal to ttValue and anyhow is read from TT that can be corrupted in SMP case, we need to sanity check it before to use. bench: 4176431 --- diff --git a/src/search.cpp b/src/search.cpp index cf640a0a..6bdf255c 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -646,6 +646,7 @@ namespace { && !inCheck && eval - futility_margin(depth, (ss-1)->futilityMoveCount) >= beta && abs(beta) < VALUE_MATE_IN_MAX_PLY + && abs(eval) < VALUE_KNOWN_WIN && pos.non_pawn_material(pos.side_to_move())) return eval - futility_margin(depth, (ss-1)->futilityMoveCount);