X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=parser.c;h=ca1681b7a91fe4f1b72681f8bdeb620c65e8b035;hb=7d36b24250db61fe2fd46465d7685ce008f7d546;hp=ee1e2b1236839272c860074c7ab1e1e0574efe1c;hpb=72c1bad914f957ae8f646aa29aa7ba932394ec8a;p=xboard.git diff --git a/parser.c b/parser.c index ee1e2b1..ca1681b 100644 --- a/parser.c +++ b/parser.c @@ -2838,7 +2838,7 @@ case 11: YY_RULE_SETUP #line 826 "parser.l" { - /* Bughouse piece drop. No legality checking for now. */ + /* Bughouse piece drop. */ currentMoveString[1] = '@'; currentMoveString[2] = yytext[2]; currentMoveString[3] = yytext[3]; @@ -2854,11 +2854,11 @@ YY_RULE_SETUP if (WhiteOnMove(yyboardindex)) { currentMoveString[0] = ToUpper(yytext[0]); - return (int) WhiteDrop; } else { currentMoveString[0] = ToLower(yytext[0]); - return (int) BlackDrop; } + return LegalityTest(boards[yyboardindex], PosFlags(yyboardindex), DROP_RANK, // [HGM] does drops now too + CharToPiece(currentMoveString[0]), currentMoveString[3] - ONE, currentMoveString[2] - AAA, NULLCHAR); } YY_BREAK case 12: