When an engine responded to the "analyze" command with an "unknown command"
message, a Reset was done without altering the display, causing a
discrepancy between display and internal state, which caused confusion
when it finally corrected itself. I replaced the Reset call by an
EditGameEvent call, to preserve the loaded game. The Reset was presumably
used to allow for the case where the engine would be so upset by the
analyze command that it needed to be reset by a "new" command, but this
seems overly paranoic for an engine that just recognized the command
as an unknown one.
if (StrStr(message, "analyze")) {
cps->analysisSupport = FALSE;
cps->analyzing = FALSE;
- Reset(FALSE, TRUE);
+// Reset(FALSE, TRUE); // [HGM] this caused discrepancy between display and internal state!
+ EditGameEvent(); // [HGM] try to preserve loaded game
snprintf(buf2,MSG_SIZ, _("%s does not support analysis"), cps->tidy);
DisplayError(buf2, 0);
return;