Fix FEN reading
authorH.G.Muller <hgm@hgm-xboard.(none)>
Wed, 8 Oct 2025 20:10:31 +0000 (22:10 +0200)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Wed, 8 Oct 2025 20:10:31 +0000 (22:10 +0200)
A space now is recognized as the end of the board part, rather than
taken as piece ID.

hachu.c

diff --git a/hachu.c b/hachu.c
index ee53b1e..1aa2acd 100644 (file)
--- a/hachu.c
+++ b/hachu.c
@@ -10,7 +10,7 @@
 // promotions by pieces with Lion power stepping in & out the zone in same turn\r
 // promotion on capture\r
 \r
-#define VERSION "0.21d"\r
+#define VERSION "0.21"\r
 \r
 //define PATH level==0 || path[0] == 0x82906b &&  (level==1 || path[1] == 0x8790d9 && (level == 2 || path[2] == 0x8598ca && (level == 3 /*|| path[3] == 0x3e865 && (level == 4 || path[4] == 0x4b865 && (level == 5))*/)))\r
 #define PATH 0\r
@@ -377,7 +377,6 @@ PieceDesc makaPieces[] = {
   {"fY", "", 10, { 0,X,0,0,X,0,0,X } }, // Free Tile +Y\r
   {"fU", "", 10, { 0,X,0,0,0,0,0,X } }, // Free Stone +U\r
   {"EM", "", 10, { 0,0,0,0,0,0,0,0 } }, // Emperor +K\r
-\r
   {"TK", "", 1300, { K,K,K,K,K,K,K,K }, 0, 6}, // Teaching King +I'\r
   {"BS", "", 1500, { S,S,S,S,S,S,S,S }, 0, 7}, // Budhist Spirit +J'\r
   {"WS", "", 10, { X,X,0,X,1,X,0,X } }, // Wizard Stork +N'\r
@@ -958,7 +957,7 @@ SetUp (char *array, int var)
       int pflag=0;\r
       if(*array == '+') pflag++, array++;\r
       c = name[0] = *array++;\r
-      if(!c) goto eos;\r
+      if(!c || c == ' ') goto eos;\r
       if(c == '.') continue;\r
       if(c > '0' && c <= '9') {\r
         c -= '0'; if(*array >= '0' && *array <= '9') c = 10*c + *array++ - '0';\r