Bugfix stale first-click
authorH.G. Muller <h.g.muller@hccnet.nl>
Sun, 7 Feb 2010 10:18:56 +0000 (11:18 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Sun, 7 Feb 2010 10:18:56 +0000 (11:18 +0100)
When the opponent resigned after the user had cicked a from-square,
clicking the from-square for the first move in the next game would
produce an "illegal move" message, because it was considered a to-click!
We now set fromX and fromY to invalid in GameEnds().
Should we also reset them on mode changes?

backend.c

index 2438d49..387f87c 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -8717,6 +8717,8 @@ GameEnds(result, resultDetails, whosays)
              result, resultDetails ? resultDetails : "(null)", whosays);
     }
 
+    fromX = fromY = -1; // [HGM] abort any move the user is entering.
+
     if (appData.icsActive && (whosays == GE_ENGINE || whosays >= GE_ENGINE1)) {
        /* If we are playing on ICS, the server decides when the
           game is over, but the engine can offer to draw, claim