From 600b306195db507c7917d0302fef4e26ec0d4de6 Mon Sep 17 00:00:00 2001 From: Peter Osterlund Date: Tue, 17 Jan 2012 23:35:51 +0000 Subject: [PATCH] DroidFish: Fixed broken handling of UCI "searchmoves" in the cuckoochess engine. --- .../droidfish/engine/cuckoochess/DroidEngineControl.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/DroidFish/src/org/petero/droidfish/engine/cuckoochess/DroidEngineControl.java b/DroidFish/src/org/petero/droidfish/engine/cuckoochess/DroidEngineControl.java index 896fc20..286d076 100644 --- a/DroidFish/src/org/petero/droidfish/engine/cuckoochess/DroidEngineControl.java +++ b/DroidFish/src/org/petero/droidfish/engine/cuckoochess/DroidEngineControl.java @@ -126,8 +126,8 @@ public class DroidEngineControl { computeTimeLimit(sPar); ponder = false; infinite = (maxTimeLimit < 0) && (maxDepth < 0) && (maxNodes < 0); - startThread(minTimeLimit, maxTimeLimit, maxDepth, maxNodes); searchMoves = sPar.searchMoves; + startThread(minTimeLimit, maxTimeLimit, maxDepth, maxNodes); } final public void startPonder(Position pos, List moves, SearchParams sPar) { @@ -227,9 +227,8 @@ public class DroidEngineControl { sc.nodesBetweenTimeCheck = 500; MoveGen.MoveList moves = moveGen.pseudoLegalMoves(pos); MoveGen.removeIllegal(pos, moves); - if ((searchMoves != null) && (searchMoves.size() > 0)) { - Arrays.asList(moves.m).retainAll(searchMoves); - } + if ((searchMoves != null) && (searchMoves.size() > 0)) + moves.filter(searchMoves); final MoveGen.MoveList srchMoves = moves; onePossibleMove = false; if ((srchMoves.size < 2) && !infinite) {