]> git.sesse.net Git - stockfish/blobdiff - src/search.cpp
Correctly set mateThreat in search()
[stockfish] / src / search.cpp
index 4449b1be0e2f4408bcb8b792b776221c4aa81517..75b6bd0caefd42ebf5f4c2c7bced970b88d66074 100644 (file)
@@ -1080,7 +1080,7 @@ namespace {
       {
         // Try to reduce non-pv search depth by one ply if move seems not problematic,
         // if the move fails high will be re-searched at full depth.
-        if (    depth >= 2*OnePly
+        if (    depth >= 3*OnePly
             &&  moveCount >= LMRPVMoves
             && !dangerous
             && !moveIsCapture
@@ -1251,6 +1251,9 @@ namespace {
 
         if (value_is_mate(nullValue))
         {
+            if (nullValue == value_mated_in(ply + 2))
+                mateThreat = true;
+
             /* Do not return unproven mates */
         }
         else if (nullValue >= beta)
@@ -1269,9 +1272,6 @@ namespace {
             // move which was reduced. If a connection is found, return a fail
             // low score (which will cause the reduced move to fail high in the
             // parent node, which will trigger a re-search with full depth).
-            if (nullValue == value_mated_in(ply + 2))
-                mateThreat = true;
-
             ss[ply].threatMove = ss[ply + 1].currentMove;
             if (   depth < ThreatDepth
                 && ss[ply - 1].reduction
@@ -1364,7 +1364,7 @@ namespace {
 
       // Try to reduce non-pv search depth by one ply if move seems not problematic,
       // if the move fails high will be re-searched at full depth.
-      if (    depth >= 2*OnePly
+      if (    depth >= 3*OnePly
           &&  moveCount >= LMRNonPVMoves
           && !dangerous
           && !moveIsCapture