X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=backend.c;h=0c12671053242c27c3da450913f2f8add05038cc;hb=83fc252bbb9a3fede1112a2bbffd386293dc8575;hp=b7aafeedb159859f2076603925499f37a3d6d51e;hpb=09822b16d43fe8f9c3ef6a22360b4448efc73770;p=xboard.git diff --git a/backend.c b/backend.c index b7aafee..0c12671 100644 --- a/backend.c +++ b/backend.c @@ -7898,7 +7898,10 @@ LeftClick (ClickType clickType, int xPix, int yPix) if(gatingPiece != EmptySquare && gameInfo.variant == VariantSChess) promoChoice = ToLower(PieceToChar(gatingPiece)); - if(legal[toY][toX] == 2) promoChoice = ToLower(PieceToChar(defaultPromoChoice)); // highlight-induced promotion + if(legal[toY][toX] == 2) { // highlight-induced promotion + if(piece == defaultPromoChoice) promoChoice = NULLCHAR; // deferral + else promoChoice = ToLower(PieceToChar(defaultPromoChoice)); + } if (legal[toY][toX] == 2 && !appData.sweepSelect || HasPromotionChoice(fromX, fromY, toX, toY, &promoChoice, appData.sweepSelect)) { SetHighlights(fromX, fromY, toX, toY);