diff options
Diffstat (limited to 'src/search.c')
| -rwxr-xr-x | src/search.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/search.c b/src/search.c index 4a153aa..6352f97 100755 --- a/src/search.c +++ b/src/search.c @@ -526,18 +526,20 @@ Search(IN SEARCHER_THREAD_CONTEXT *ctx, (ctx->sPlyInfo[ctx->uPly - 2].iExtensionAmount <= 0)) { ASSERT(uDepth >= THREE_QUARTERS_PLY); - if ((uDepth <= ONE_PLY + THREE_QUARTERS_PLY) && - (iEval + VALUE_KNIGHT + iImprovement <= iAlpha)) - { - uFutilityMargin = (iAlpha - iEval) / 2; - ASSERT(uFutilityMargin); - } - else if ((uDepth > ONE_PLY + THREE_QUARTERS_PLY) && - (uDepth <= TWO_PLY + THREE_QUARTERS_PLY) && - (iEval + VALUE_ROOK + iImprovement <= iAlpha)) + + if (iEval < iAlpha) { - uFutilityMargin = (iAlpha - iEval) / 2; - ASSERT(uFutilityMargin); + if ((uDepth <= ONE_PLY + THREE_QUARTERS_PLY) && + (iEval + VALUE_KNIGHT + iImprovement <= iAlpha)) + { + uFutilityMargin = (iAlpha - iEval) / 2; + } + else if ((uDepth > ONE_PLY + THREE_QUARTERS_PLY) && + (uDepth <= TWO_PLY + THREE_QUARTERS_PLY) && + (iEval + VALUE_ROOK + iImprovement <= iAlpha)) + { + uFutilityMargin = (iAlpha - iEval) / 2; + } } } uStage++; |
