X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=backend.c;h=0328a586f4380ae7cacf6893ff8c7e8680ad9af1;hb=718933f1c67acc537f88199e4c72e3ad1b6a32d7;hp=f8ad17c6890514473c285a31bcfff9c66aeca110;hpb=82c3965009311d49a9f565e27804b2235b8f295f;p=xboard.git diff --git a/backend.c b/backend.c index f8ad17c..0328a58 100644 --- a/backend.c +++ b/backend.c @@ -952,6 +952,7 @@ SaveEngineList () void AddToEngineList (int i) { + if(addToList) { int len; char quote, buf[MSG_SIZ]; char *q = firstChessProgramNames, *p = newEngineCommand; @@ -975,6 +976,7 @@ AddToEngineList (int i) SaveEngineList(); FloatToFront(&appData.recentEngineList, buf); ASSIGN(currentEngine[i], buf); + } } void @@ -1060,6 +1062,7 @@ Load (ChessProgramState *cps, int i) } if(jar) { snprintf(buf3, MSG_SIZ, "java -jar %s", p); p = buf3; } ASSIGN(appData.chessProgram[i], p); + tryNr = 3; // requests adding to list without auto-detect if(isUCI == 3) tryNr = 1, isUCI = 0; // auto-detect appData.isUCI[i] = isUCI; appData.protocolVersion[i] = v1 ? 1 : PROTOVER; @@ -9245,7 +9248,7 @@ FakeBookMove: // [HGM] book: we jump here to simulate machine moves after book h cps->useSigterm = FALSE; } if (strncmp(message, "feature ", 8) == 0) { // [HGM] moved forward to pre-empt non-compliant commands - ParseFeatures(message+8, cps); if(tryNr < 3) tryNr = 3; + ParseFeatures(message+8, cps); if(tryNr && tryNr < 3) tryNr = 3; return; // [HGM] This return was missing, causing option features to be recognized as non-compliant commands! }