X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fposition.h;h=e73c8ff5d9d3c78406f346f5b7582aef2e4c7f0a;hb=f86d2aee29d9fd86a29e976698c76afc2a187903;hp=9dd9e79e97f8a7d99f4088e469833ccc766b6366;hpb=cca34e234cc98ed4b61e75a25f8cd0d917c2a3fa;p=stockfish diff --git a/src/position.h b/src/position.h index 9dd9e79e..e73c8ff5 100644 --- a/src/position.h +++ b/src/position.h @@ -405,6 +405,7 @@ inline void Position::put_piece(Square s, Color c, PieceType pt) { byTypeBB[ALL_PIECES] |= s; byTypeBB[pt] |= s; byColorBB[c] |= s; + pieceCount[c][ALL_PIECES]++; index[s] = pieceCount[c][pt]++; pieceList[c][pt][index[s]] = s; } @@ -433,6 +434,7 @@ inline void Position::remove_piece(Square s, Color c, PieceType pt) { byTypeBB[pt] ^= s; byColorBB[c] ^= s; /* board[s] = NO_PIECE; */ // Not needed, will be overwritten by capturing + pieceCount[c][ALL_PIECES]--; Square lastSquare = pieceList[c][pt][--pieceCount[c][pt]]; index[lastSquare] = index[s]; pieceList[c][pt][index[lastSquare]] = lastSquare;