emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/undo-tree a3e81b6 161/195: Fix bug that caused undo-tre


From: Stefan Monnier
Subject: [elpa] externals/undo-tree a3e81b6 161/195: Fix bug that caused undo-tree to hang when undoing in region (bug#16377).
Date: Sat, 28 Nov 2020 13:41:44 -0500 (EST)

branch: externals/undo-tree
commit a3e81b682053a81e082139300ef0a913a7a610a2
Author: Barry O'Reilly <boreilly@aer.com>
Commit: Toby S. Cubitt <toby-undo-tree@dr-qubit.org>

    Fix bug that caused undo-tree to hang when undoing in region (bug#16377).
---
 undo-tree.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/undo-tree.el b/undo-tree.el
index ed17bfe..d956a3f 100644
--- a/undo-tree.el
+++ b/undo-tree.el
@@ -1714,13 +1714,13 @@ Comparison is done with `eq'."
 (defun undo-tree-copy-list (undo-list)
   ;; Return a deep copy of first changeset in `undo-list'. Object id's are
   ;; replaced by corresponding objects from `buffer-undo-tree' object-pool.
-  (when undo-list
     (let (copy p)
       ;; if first element contains an object id, replace it with object from
       ;; pool, discarding element entirely if it's been GC'd
-      (while (null copy)
+    (while (and undo-list (null copy))
        (setq copy
              (undo-tree-restore-GC-elts-from-pool (pop undo-list))))
+    (when copy
       (setq copy (list copy)
            p copy)
       ;; copy remaining elements, replacing object id's with objects from



reply via email to

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