X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fpawns.h;h=4fee93165f187a4cd400a91cc8c774348c8c6c18;hp=0376ce617f098e7c151dd45cf6816640936f11d8;hb=2aac860db3d04881103a3b0d09e864ac77b80697;hpb=8b00e50cb74392c24938c0019ac528a9feabd614 diff --git a/src/pawns.h b/src/pawns.h index 0376ce61..4fee9316 100644 --- a/src/pawns.h +++ b/src/pawns.h @@ -59,6 +59,7 @@ private: Bitboard passedPawns[2]; Bitboard pawnAttacks[2]; Square kingSquares[2]; + int castleRights[2]; Score value; int halfOpenFiles[2]; Score kingSafety[2]; @@ -106,7 +107,8 @@ inline int PawnEntry::has_open_file_to_right(Color c, File f) const { template inline Score PawnEntry::king_safety(const Position& pos, Square ksq) { - return kingSquares[Us] == ksq ? kingSafety[Us] : update_safety(pos, ksq); + return kingSquares[Us] == ksq && castleRights[Us] == pos.can_castle(Us) + ? kingSafety[Us] : update_safety(pos, ksq); } #endif // !defined(PAWNS_H_INCLUDED)