Allow clearing of marker dots in any mode
authorH.G. Muller <h.g.muller@hccnet.nl>
Thu, 12 Apr 2012 15:28:32 +0000 (17:28 +0200)
committerH.G. Muller <h.g.muller@hccnet.nl>
Thu, 12 Apr 2012 15:31:57 +0000 (17:31 +0200)
There might already be dots when you change to a mode where there should
be none, and you don't want them to stay on forever in that case...

backend.c

index 58c7951..8021102 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -6919,11 +6919,11 @@ void
 MarkTargetSquares (int clear)
 {
   int x, y;
 MarkTargetSquares (int clear)
 {
   int x, y;
+  if(clear) // no reason to ever suppress clearing
+    for(x=0; x<BOARD_WIDTH; x++) for(y=0; y<BOARD_HEIGHT; y++) marker[y][x] = 0;
   if(!appData.markers || !appData.highlightDragging || appData.icsActive && gameInfo.variant < VariantShogi ||
      !appData.testLegality || gameMode == EditPosition) return;
   if(!appData.markers || !appData.highlightDragging || appData.icsActive && gameInfo.variant < VariantShogi ||
      !appData.testLegality || gameMode == EditPosition) return;
-  if(clear) {
-    for(x=0; x<BOARD_WIDTH; x++) for(y=0; y<BOARD_HEIGHT; y++) marker[y][x] = 0;
-  } else {
+  if(!clear) {
     int capt = 0;
     GenLegal(boards[currentMove], PosFlags(currentMove), Mark, (void*) marker, EmptySquare);
     if(PosFlags(0) & F_MANDATORY_CAPTURE) {
     int capt = 0;
     GenLegal(boards[currentMove], PosFlags(currentMove), Mark, (void*) marker, EmptySquare);
     if(PosFlags(0) & F_MANDATORY_CAPTURE) {