X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=engineoutput.c;h=47d3fc109f605583f94a2e8cedead6462387a165;hb=fcc8546ae23f9aed992cd222bb1b9cab6ac642c1;hp=42eccc03ebe3aef84bfd701724b99e9db8db7c80;hpb=3b7462ef71c6d6c841bd2f19cafb5679b9841a44;p=xboard.git diff --git a/engineoutput.c b/engineoutput.c index 42eccc0..47d3fc1 100644 --- a/engineoutput.c +++ b/engineoutput.c @@ -5,7 +5,7 @@ * * Copyright 2005 Alessandro Scotti * - * Enhancements Copyright 1995, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. + * Enhancements Copyright 1995, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. * * ------------------------------------------------------------------------ * @@ -413,7 +413,7 @@ InsertionPoint (int len, EngineOutputData *ed) if(ed->moveKey != keys[i+n] && // same move always tops previous one (as a higher score must be a fail low) newScore < scores[i+n]) break; // if it had higher score as previous, move previous in stead - scores[i+n+2] = scores[i+n]; + scores[i+n+2] = ed->moveKey == keys[i+n] ? newScore : scores[i+n]; // correct scores of fail-low/high searches textEnd[i+n+2] = textEnd[i+n] + len; keys[i+n+2] = keys[i+n]; } @@ -421,6 +421,7 @@ InsertionPoint (int len, EngineOutputData *ed) offs = 0; textEnd[n] = offs + len; scores[n] = newScore; + keys[n] = ed->moveKey; } nrVariations[n] += 2; return offs + (gameMode == AnalyzeMode)*strlen(header[ed->which]);