Extend checks more in losing positions
[stockfish] / src / search.cpp
index 4b0a9fe8b60676b96c7c5dcc9bda19f9d5bcd6b8..f64f55f0a129a4b4292891140ebd9eb1ad818af5 100644 (file)
@@ -837,7 +837,7 @@ moves_loop: // When in check and at SpNode search starts from here
           ext = ONE_PLY;
 
       else if (givesCheck && pos.see_sign(move) >= 0)
-          ext = ONE_PLY / 2;
+          ext = inCheck || ss->staticEval < VALUE_ZERO ? ONE_PLY : ONE_PLY / 2;
 
       // Singular extension search. If all moves but one fail low on a search of
       // (alpha-s, beta-s), and just one fails high on (alpha, beta), then that move