Simplify wait_for_stop_or_ponderhit()
authorMarco Costalba <mcostalba@gmail.com>
Fri, 1 Apr 2011 11:48:13 +0000 (13:48 +0200)
committerMarco Costalba <mcostalba@gmail.com>
Fri, 1 Apr 2011 20:46:27 +0000 (21:46 +0100)
No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/search.cpp

index 0b069e2f581e804589289d2fb18251c63cc7f0a7..061bbafca0cd1a4b7e0885407ce76a68938c1b23 100644 (file)
@@ -1944,10 +1944,7 @@ split_point_start: // At split points actual search starts from here
         // We are line oriented, don't read single chars
         std::string command;
 
-        if (!std::getline(std::cin, command))
-            command = "quit";
-
-        if (command == "quit")
+        if (!std::getline(std::cin, command) || command == "quit")
         {
             // Quit the program as soon as possible
             Pondering = false;
@@ -2025,20 +2022,12 @@ split_point_start: // At split points actual search starts from here
 
     std::string command;
 
-    while (true)
-    {
-        // Wait for a command from stdin
-        if (!std::getline(std::cin, command))
-            command = "quit";
+    // Wait for a command from stdin
+    while (   std::getline(std::cin, command)
+           && command != "ponderhit" && command != "stop" && command != "quit") {};
 
-        if (command == "quit")
-        {
-            QuitRequest = true;
-            break;
-        }
-        else if (command == "ponderhit" || command == "stop")
-            break;
-    }
+    if (command != "ponderhit" && command != "stop")
+        QuitRequest = true; // Must be "quit" or getline() returned false
   }