X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=parser.c;h=0a6549ef1325264ffab2777c31e59e95b8dd019f;hb=fa7d7709b3b69ab3f5fbea393f00d6d89b13b3a1;hp=d2bae37adbc5c013fc0ab6ad3efb8a269fa9774a;hpb=ab5cae2d93784e7f5aea0ec871eaf6386b9296eb;p=xboard.git diff --git a/parser.c b/parser.c index d2bae37..0a6549e 100644 --- a/parser.c +++ b/parser.c @@ -195,6 +195,7 @@ int NextUnit(char **p) piece = separator = promoted = slash = n = 0; for(i=0; i<4; i++) coord[i] = -1, type[i] = NOTHING; if(**p == '+') (*p)++, promoted++; + if(**p >= 'a' && **p <= 'z' && (*p)[1]== '@') piece =*(*p)++ + 'A' - 'a'; else if(**p >= 'A' && **p <= 'Z') { piece = *(*p)++; // Note we could test for 2-byte non-ascii names here if(**p == '/') slash = *(*p)++; @@ -579,3 +580,4 @@ ChessMove yylexstr(int boardIndex, char *s, char *buf, int buflen) fromString = 0; return ret; } +