From 62b43130e27e4322c5edde976d0827840b9deee4 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Wed, 27 Jan 2010 19:23:16 +0100 Subject: [PATCH] Be sure we exit while loop with lock held This fixes an hang introduced by recent locking rewrite patch. Signed-off-by: Marco Costalba --- src/search.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/search.cpp b/src/search.cpp index 6d1949de..45e91e59 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1990,7 +1990,10 @@ namespace { assert(value > -VALUE_INFINITE && value < VALUE_INFINITE); if (thread_should_stop(threadID)) + { + lock_grab(&(sp->lock)); break; + } // New best move? if (value > sp->bestValue) // Less then 2% of cases @@ -2124,7 +2127,10 @@ namespace { assert(value > -VALUE_INFINITE && value < VALUE_INFINITE); if (thread_should_stop(threadID)) + { + lock_grab(&(sp->lock)); break; + } // New best move? if (value > sp->bestValue) // Less then 2% of cases -- 2.39.2