Accept setup command in variant fairy even with legality testing on
authorH.G. Muller <h.g.muller@hccnet.nl>
Fri, 4 Nov 2011 20:55:21 +0000 (21:55 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Fri, 4 Nov 2011 20:55:21 +0000 (21:55 +0100)
Variant fairy does not really have a defined opening position, but lots
of pieces defined, so we might want to play with legality checking on,
but still rely on the engine for the opening position

backend.c

index aa326da..0b7f539 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -8118,7 +8118,8 @@ if(appData.debugMode) fprintf(debugFP, "nodes = %d, %lld\n", (int) programStats.
       return; // [HGM] This return was missing, causing option features to be recognized as non-compliant commands!
     }
 
-    if (!appData.testLegality && !strncmp(message, "setup ", 6)) { // [HGM] allow first engine to define opening position
+    if ((!appData.testLegality || gameInfo.variant == VariantFairy) && 
+                                       !strncmp(message, "setup ", 6)) { // [HGM] allow first engine to define opening position
       int dummy, s=6; char buf[MSG_SIZ];
       if(appData.icsActive || forwardMostMove != 0 || cps != &first) return;
       if(sscanf(message, "setup (%s", buf) == 1) s = 8 + strlen(buf), buf[s-9] = NULLCHAR, SetCharTable(pieceToChar, buf);