[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/gnugo 6edd793 252/357: [gnugo] Make undo commands silen

From: Stefan Monnier
Subject: [elpa] externals/gnugo 6edd793 252/357: [gnugo] Make undo commands silently handle overkill.
Date: Sun, 29 Nov 2020 14:51:33 -0500 (EST)

branch: externals/gnugo
commit 6edd793ab7b0355bed8f5393c0aaa637a1678791
Author: Thien-Thi Nguyen <ttn@gnu.org>
Commit: Thien-Thi Nguyen <ttn@gnu.org>

    [gnugo] Make undo commands silently handle overkill.
    It's impolite to reflect impoliteness.  :-D
    * packages/gnugo/gnugo.el (gnugo--climb-towards-root):
    Don't use ‘gnugo--q/ue’ for GTP "undo"; instead,
    use ‘gnugo--q’, detect overkill, and stop looping.
 NEWS     | 1 +
 gnugo.el | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/NEWS b/NEWS
index 6898cf0..da24303 100644
--- a/NEWS
+++ b/NEWS
@@ -33,6 +33,7 @@ NB: "RCS: X..Y " means that the particular release includes
   - new major mode: GNUGO Frolic (gnugo-frolic-mode)
   - GNUGO Board mode now derived from Special mode
   - position arg validated for direct GTP commands ‘undo’, ‘gg-undo’
+  - undo commands no longer signal error on overkill
   - performance improvements
   - of interest to hackers (see source, BI => backward incompatible)
     - dropped var: ‘gnugo-inhibit-refresh’ (BI)
diff --git a/gnugo.el b/gnugo.el
index 24adb49..e8e7a71 100644
--- a/gnugo.el
+++ b/gnugo.el
@@ -1979,8 +1979,8 @@ If FILENAME already exists, Emacs confirms that you wish 
to overwrite it."
                    (cdr hmm)))))
     (when (gnugo-get :game-over)
-    (while (not (eq stop (aref monkey 0)))
-      (gnugo--q/ue "undo")
+    (while (and (not (eq stop (aref monkey 0)))
+                (gnugo--no-worries (gnugo--q "undo")))
       (pop (aref monkey 0))
       (gnugo-put :last-mover (gnugo-current-player))
       (gnugo-merge-showboard-results)   ; all

reply via email to

[Prev in Thread] Current Thread [Next in Thread]