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;hp=083fe5812485597e13943b690cc24a8f25c0d140 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);