Time::point elapsed = Time::now() - SearchTime;
bool stillAtFirstMove = Signals.firstRootMove
&& !Signals.failedLowAtRoot
- && elapsed > (TimeMgr.available_time() * 62) / 100
- && elapsed > IterationTime * 1.4;
+ && ( elapsed > TimeMgr.available_time()
+ || ( elapsed > (TimeMgr.available_time() * 62) / 100
+ && elapsed > IterationTime * 1.4));
bool noMoreTime = elapsed > TimeMgr.maximum_time() - 2 * TimerThread::Resolution
|| stillAtFirstMove;