From: Marco Costalba Date: Sat, 10 Jan 2009 15:11:33 +0000 (+0100) Subject: Fix a very old bug in queen mobility X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=4b53bb02f69bd838b271b7919d1070580d6f73a7 Fix a very old bug in queen mobility For queen mobility could be bigger then 15, so we need count_1s() not count_1s_max_15(). This bug was introduced by patch: "Group common evaluate code" of 24/9/2008 So it's almost 4 months and two release old! Signed-off-by: Marco Costalba --- diff --git a/src/evaluate.cpp b/src/evaluate.cpp index c2e03d97..04e4dded 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -586,7 +586,9 @@ namespace { Bitboard bb = (b & ~ei.attackedBy[them][PAWN]); // Mobility - int mob = count_1s_max_15(bb & ~p.pieces_of_color(us)); + int mob = (Piece != QUEEN ? count_1s_max_15(bb & ~p.pieces_of_color(us)) + : count_1s(bb & ~p.pieces_of_color(us))); + ei.mgMobility += Sign[us] * MgBonus[Piece][mob]; ei.egMobility += Sign[us] * EgBonus[Piece][mob];