Please sign in to comment.
Fix a crash introduced few days ago
Crash is due to uninitialized ss->futilityMoveCount that when happens to be negative, yields to an out of range access in futility_margin(). Bug is subtle because it shows itself only in SMP case. Indeed in single thread mode we only use the Stack ss[MAX_PLY_PLUS_2]; Allocated at the begin of id_loop() and due to pure (bad) luck, it happens that for all the MAX_PLY_PLUS_2 elements, ss[i].futilityMoveCount >= 0 Note that the patch does not prevent futilityMoveCount to be overwritten after, for instance singular search or null verification, but to keep things readable and because the effect is almost unmeasurable, we here prefer a slightly incorrect but simpler patch. bench: 4311634
- Loading branch information...