]> git.sesse.net Git - stockfish/blobdiff - src/search.cpp
Simplify "ponderhit" handling
[stockfish] / src / search.cpp
index a73e1b80ff335183543a8ccd16acf6b14d8fdb82..93f20800ca982d007610ad306030dff103e130dd 100644 (file)
@@ -1973,13 +1973,6 @@ split_point_start: // At split points actual search starts from here
     static int lastInfoTime;
     int t = current_search_time();
 
-    bool stillAtFirstMove =    FirstRootMove
-                           && !AspirationFailLow
-                           &&  t > TimeMgr.available_time();
-
-    bool noMoreTime =   t > TimeMgr.maximum_time()
-                     || stillAtFirstMove;
-
     //  Poll for input
     if (data_available())
     {
@@ -2010,8 +2003,7 @@ split_point_start: // At split points actual search starts from here
             // should continue searching but switching from pondering to normal search.
             Pondering = false;
 
-            if (   Iteration >= 3 && UseTimeManagement
-                && (noMoreTime || StopOnPonderhit))
+            if (StopOnPonderhit)
                 StopRequest = true;
         }
     }
@@ -2043,6 +2035,13 @@ split_point_start: // At split points actual search starts from here
     if (Pondering)
         return;
 
+    bool stillAtFirstMove =    FirstRootMove
+                           && !AspirationFailLow
+                           &&  t > TimeMgr.available_time();
+
+    bool noMoreTime =   t > TimeMgr.maximum_time()
+                     || stillAtFirstMove;
+
     if (   (Iteration >= 3 && UseTimeManagement && noMoreTime)
         || (ExactMaxTime && t >= ExactMaxTime)
         || (Iteration >= 3 && MaxNodes && pos.nodes_searched() >= MaxNodes))