X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fthread.cpp;h=9cd63d9595476eeb2cd37bf2e7c7530a93b83a51;hp=fe7a669b8e66f989d990e89f9e24127afe1848f4;hb=ef0496ff4095330eaea4b33bb14e0386942fd093;hpb=c2fc80e5d16339266b5bf6687fa843ff65de3b3e diff --git a/src/thread.cpp b/src/thread.cpp index fe7a669b..9cd63d95 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -313,7 +313,7 @@ Value ThreadsManager::split(Position& pos, Stack* ss, Value alpha, Value beta, return bestValue; // Pick the next available split point from the split point stack - SplitPoint* sp = &master->splitPoints[master->splitPointsCnt++]; + SplitPoint* sp = &master->splitPoints[master->splitPointsCnt]; sp->parent = master->curSplitPoint; sp->master = master; @@ -357,6 +357,8 @@ Value ThreadsManager::split(Position& pos, Stack* ss, Value alpha, Value beta, break; } + master->splitPointsCnt++; + lock_release(splitLock); lock_release(sp->lock); @@ -434,7 +436,7 @@ void ThreadsManager::start_searching(const Position& pos, const LimitsType& limi Signals.stopOnPonderhit = Signals.firstRootMove = false; Signals.stop = Signals.failedLowAtRoot = false; - RootPosition.copy(pos, main_thread()); + RootPosition = pos; Limits = limits; RootMoves.clear();