I found this code in parse_board12():

/* [DM] If we found takebacks during icsEngineAnalyze try send to engine */
    if (!newGame && appData.icsEngineAnalyze && moveNum < forwardMostMove) {
        takeback = forwardMostMove - moveNum;
        for (i = 0; i < takeback; i++) {
             if (appData.debugMode) fprintf(debugFP, "take back move\n");
             SendToProgram("undo\n", &first);
        }
    }

This seems aimed at fixing the reported problem, so it seems Daniel
has been working on it already. I don't see any flaws in the code;
(well, perhaps if the number of undos was very large, it would make
more sense to start a new game and load it from the begining...),
so if the problem occurs despite of it, it must be because the ICS
does not send a board.
_______________________________________________
Bug-XBoard mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-xboard

Reply via email to