Piece captured = piece_on(type_of(m) == EN_PASSANT ? capture_square(to) : to);
if (to == from)
{
- assert((type_of(m) == PROMOTION && sittuyin_promotion()) || (is_pass(m) && pass(us)));
+ assert((type_of(m) == PROMOTION && sittuyin_promotion()) || (is_pass(m) && (pass(us) || var->wallOrMove )));
captured = NO_PIECE;
}
st->capturedpromoted = is_promoted(to);
assert(type_of(m) == DROP || empty(from) || type_of(m) == CASTLING || is_gating(m)
|| (type_of(m) == PROMOTION && sittuyin_promotion())
- || (is_pass(m) && pass(us)));
+ || (is_pass(m) && (pass(us) || var->wallOrMove)));
assert(type_of(st->capturedPiece) != KING);
// Reset wall squares