From 4b53bb02f69bd838b271b7919d1070580d6f73a7 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Sat, 10 Jan 2009 16:11:33 +0100 Subject: [PATCH] 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 --- src/evaluate.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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]; -- 2.39.2