Address review comments.
diff --git a/src/benchmark.cc b/src/benchmark.cc
index 7532c9c..1b966d4 100644
--- a/src/benchmark.cc
+++ b/src/benchmark.cc
@@ -206,11 +206,10 @@
   void RemoveErroredThread() EXCLUDES(lock_) {
     MutexLock ml(lock_);
     int last_thread = --running_threads_ == 0;
-    if (last_thread && running_) {
-        InternalStop();
-    } else if (!last_thread){
+    if (last_thread && running_)
+      InternalStop();
+    else if (!last_thread)
       phase_condition_.notify_all();
-    }
   }
 
   // REQUIRES: timer is not running
@@ -279,13 +278,10 @@
         return this->phase_number_ > phase_number_cp ||
                entered_ == running_threads_; // A thread has aborted in error
       };
-      while (true) {
-        phase_condition_.wait(ml.native_handle(), cb);
-        if (phase_number_ > phase_number_cp)
+      phase_condition_.wait(ml.native_handle(), cb);
+      if (phase_number_ > phase_number_cp)
           return false;
-        else if (running_threads_ == entered_)
-          break;
-      }
+      // else (running_threads_ == entered_) and we are the last thread.
     }
     // Last thread has reached the barrier
     phase_number_++;