X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmovepick.cpp;h=6a7fd4ebce3e50bcc8d598b5d04702ad4fe7a455;hp=20aaabbdde0288a28743ea230706dc2905cc281f;hb=24b7ad54c747ef38818484567624696fe3ef5e9e;hpb=c6d62b7da5b9bb0e8c987596d1c6a304b337ca32 diff --git a/src/movepick.cpp b/src/movepick.cpp index 20aaabbd..6a7fd4eb 100644 --- a/src/movepick.cpp +++ b/src/movepick.cpp @@ -97,7 +97,7 @@ MovePicker::MovePicker(const Position& p, bool pv, Move ttm, phaseIndex = (noCaptures ? NoMovesPhaseIndex : QsearchWithoutChecksPhaseIndex); dc = p.discovered_check_candidates(us); - pinned = p.pinned_pieces(p.side_to_move()); + pinned = p.pinned_pieces(us); finished = false; } @@ -141,8 +141,8 @@ Move MovePicker::get_next_move() { assert(move_is_ok(mateKiller)); if (move_is_legal(pos, mateKiller, pinned)) return mateKiller; - } - break; + } + break; case PH_GOOD_CAPTURES: numOfMoves = generate_captures(pos, moves); @@ -151,7 +151,7 @@ Move MovePicker::get_next_move() { break; case PH_BAD_CAPTURES: - badCapturesPicked = 0; + movesPicked = 0; break; case PH_NONCAPTURES: @@ -162,7 +162,7 @@ Move MovePicker::get_next_move() { case PH_EVASIONS: assert(pos.is_check()); - numOfMoves = generate_evasions(pos, moves); + numOfMoves = generate_evasions(pos, moves, pinned); score_evasions(); movesPicked = 0; break; @@ -434,12 +434,12 @@ Move MovePicker::pick_move_from_list() { case PH_BAD_CAPTURES: assert(!pos.is_check()); - assert(badCapturesPicked >= 0); + assert(movesPicked >= 0); // It's probably a good idea to use SEE move ordering here, instead // of just picking the first move. FIXME - while (badCapturesPicked < numOfBadCaptures) + while (movesPicked < numOfBadCaptures) { - move = badCaptures[badCapturesPicked++].move; + move = badCaptures[movesPicked++].move; if ( move != ttMove && move != mateKiller && pos.pl_move_is_legal(move, pinned))