1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00
BadFish/src
Marco Costalba da948cc94e Fix use of an initialized SearchStack
In RootMoveList c'tor we allocate a search stack and then
call directly qsearch.

There is called init_node() that clears all the fields of the search
stack array that refers to current ply but not the the killer moves.

The killer moves cleared correspond to ply+2.

In id_loop() this is not a problem because killer moves of
corresponding ply are cleared anyway few instructions later,
but in RootMoveList c'tor we leave them uninitialized.

This patch fixes this very old bug. It comes direclty
from Glaurung age.

Bug spotted by Valgrind.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
2009-10-06 11:12:41 +01:00
..
application.cpp Clean killers handling in movepicker 2009-08-26 15:38:47 +01:00
application.h Remove unused members in Application class 2009-07-26 16:11:20 +01:00
benchmark.cpp Add support for saving timing file during benchmark 2009-07-04 10:32:51 +01:00
benchmark.h Update copyright year 2009-05-07 14:54:40 +02:00
bitbase.cpp Update copyright year 2009-05-07 14:54:40 +02:00
bitbase.h Update copyright year 2009-05-07 14:54:40 +02:00
bitboard.cpp Remove a local variable from pop_1st_bit() 2009-08-23 18:55:07 +01:00
bitboard.h Use optimized pop_1st_bit() under Windows 64 with icc 2009-08-14 12:47:49 +01:00
bitcount.h Fix bitcount.h compile warnings under Intel compiler 2009-07-04 18:10:39 +01:00
book.cpp Simplify move legality check for uncommon cases 2009-09-22 07:07:18 +01:00
book.h Update copyright year 2009-05-07 14:54:40 +02:00
color.h Use string instead of std::string 2009-05-10 18:38:47 +01:00
COPYING Initial import of Glaurung 2.1 2008-09-01 07:59:13 +02:00
depth.h Directly relate HistoryMax to OnePly 2009-05-20 14:43:17 +02:00
direction.cpp Space inflate and cleanup direction.cpp 2009-05-20 12:02:39 +02:00
direction.h Update copyright year 2009-05-07 14:54:40 +02:00
endgame.cpp Rename piece_attacks_from() in attacks_from() 2009-09-20 14:55:28 +01:00
endgame.h Better naming and document some endgame functions 2009-08-14 08:19:55 +01:00
evaluate.cpp Small touches to increased mobility patch 2009-10-04 06:59:06 +01:00
evaluate.h Small code style in headers 2009-05-20 15:11:41 +02:00
history.cpp Reduce history 4 times instead of 2 when reach the maximum 2009-05-20 09:03:15 +02:00
history.h Directly relate HistoryMax to OnePly 2009-05-20 14:43:17 +02:00
lock.h Use WIN32_LEAN_AND_MEAN in lock.h 2009-09-17 14:18:44 +01:00
main.cpp Add support for saving timing file during benchmark 2009-07-04 10:32:51 +01:00
Makefile Added a few new targets to the Makefile for OS X with icpc. 2009-08-21 10:50:34 +02:00
material.cpp Second take at unifying bitboard representation access 2009-09-04 08:21:06 +01:00
material.h Better naming and document some endgame functions 2009-08-14 08:19:55 +01:00
mersenne.cpp Warnings termination fest 2008-09-24 00:32:53 +02:00
mersenne.h Update copyright year 2009-05-07 14:54:40 +02:00
misc.cpp Restore development version 2009-10-05 07:15:13 +01:00
misc.h Use string instead of std::string 2009-05-10 18:38:47 +01:00
move.cpp Micro optimize and rename move_promotion() 2009-06-20 09:04:32 +01:00
move.h Micro optimize and rename move_promotion() 2009-06-20 09:04:32 +01:00
movegen.cpp Micro optimization of generate_piece_moves() 2009-09-24 07:11:39 +01:00
movegen.h Simplify move legality check for uncommon cases 2009-09-22 07:07:18 +01:00
movepick.cpp MovePicker: rename number_of_moves() in number_of_evasions() 2009-08-31 15:32:31 +02:00
movepick.h MovePicker: rename number_of_moves() in number_of_evasions() 2009-08-31 15:32:31 +02:00
pawns.cpp Store pawn attacks in PawnInfo 2009-09-30 16:11:37 +01:00
pawns.h Remove a redundant assignment in PawnInfo c'tor 2009-10-06 09:18:15 +01:00
piece.cpp Update copyright year 2009-05-07 14:54:40 +02:00
piece.h Retire piece_is_slider(PieceType pt) 2009-09-04 08:21:07 +01:00
position.cpp Fixed an embarassing Chess960 bug found by Alexander Schmidt. 2009-10-05 16:46:18 +02:00
position.h Micro optimization of generate_piece_moves() 2009-09-24 07:11:39 +01:00
psqtab.h Joona tweaks of piece values 2009-07-02 06:29:14 +01:00
san.cpp Micro optimize and rename move_promotion() 2009-06-20 09:04:32 +01:00
san.h Update copyright year 2009-05-07 14:54:40 +02:00
scale.h Update copyright year 2009-05-07 14:54:40 +02:00
search.cpp Fix use of an initialized SearchStack 2009-10-06 11:12:41 +01:00
search.h Remove global variables from search.h 2009-06-12 13:10:40 +02:00
square.h Update copyright year 2009-05-07 14:54:40 +02:00
thread.h Revert per-thread history tables 2009-07-02 06:29:25 +01:00
tt.cpp Small code reformat in TranspositionTable::extract_pv() 2009-10-06 07:14:12 +01:00
tt.h Small code reformat in TranspositionTable::extract_pv() 2009-10-06 07:14:12 +01:00
types.h L1/L2 friendly PhaseTable[] 2009-08-15 16:09:10 +01:00
uci.cpp Small tidy up of previous patch 2009-07-10 18:50:43 +01:00
uci.h Update copyright year 2009-05-07 14:54:40 +02:00
ucioption.cpp Temporarily removed the unfinished UCI_Elo code in preparation for 2009-09-29 13:40:00 +02:00
ucioption.h Use string instead of std::string 2009-05-10 18:38:47 +01:00
value.cpp Update copyright year 2009-05-07 14:54:40 +02:00
value.h Save static evaluation also for failed low nodes 2009-09-20 20:05:40 +01:00