From 77c91ac1ba45c55584de81b58116361564c6a69a Mon Sep 17 00:00:00 2001 From: Jean-Francois Romang Date: Thu, 25 Oct 2012 15:57:44 +0200 Subject: [PATCH] Full three fold repetition detection only at root node --- src/search.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/search.cpp b/src/search.cpp index 785cf0ef..9980dcf9 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -524,7 +524,7 @@ namespace { if (!RootNode) { // Step 2. Check for aborted search and immediate draw - if (Signals.stop || (PvNode?pos.is_draw():pos.is_draw()) || ss->ply > MAX_PLY) + if (Signals.stop || pos.is_draw() || ss->ply > MAX_PLY) return DrawValue[pos.side_to_move()]; // Step 3. Mate distance pruning. Even if we mate at the next move our score @@ -538,6 +538,10 @@ namespace { if (alpha >= beta) return alpha; } + else + { + if(pos.is_draw()) return DrawValue[pos.side_to_move()]; + } // Step 4. Transposition table lookup // We don't want the score of a partial search to overwrite a previous full search -- 2.39.2