diff -r 970748b9a73b -r 7ffd66591afe src/rules/pawn.c --- a/src/rules/pawn.c Wed Mar 26 14:53:15 2014 +0100 +++ b/src/rules/pawn.c Fri Mar 28 11:45:01 2014 +0100 @@ -35,8 +35,9 @@ if (move->fromrow == move->torow + d && ( move->fromfile == move->tofile + 1 || move->fromfile == move->tofile - 1)) { - // TODO: en passant - return mdst(board,move) != 0; /* color has been checked */ + + return mdst(board,move) + || (board[move->fromrow][move->tofile] & ENPASSANT_THREAT); } else { return FALSE; }