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

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

[elpa] externals/undo-tree da54994 117/195: When discarding root, erase


From: Stefan Monnier
Subject: [elpa] externals/undo-tree da54994 117/195: When discarding root, erase previous link of new root.
Date: Sat, 28 Nov 2020 13:41:34 -0500 (EST)

branch: externals/undo-tree
commit da549948e1714d27d63635aa84e976c58a8f7cb8
Author: Toby S. Cubitt <toby-undo-tree@dr-qubit.org>
Commit: Toby S. Cubitt <toby-undo-tree@dr-qubit.org>

    When discarding root, erase previous link of new root.
---
 undo-tree.el | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/undo-tree.el b/undo-tree.el
index 471ae9f..ee23e3e 100644
--- a/undo-tree.el
+++ b/undo-tree.el
@@ -1926,9 +1926,10 @@ Comparison is done with `eq'."
          (decf (undo-tree-size buffer-undo-tree)
                (+ (undo-list-byte-size (undo-tree-node-undo node))
                   (undo-list-byte-size (undo-tree-node-redo node))))
-         ;; discard new root's undo data
+         ;; discard new root's undo data and PREVIOUS link
          (setf (undo-tree-node-undo node) nil
-               (undo-tree-node-redo node) nil)
+               (undo-tree-node-redo node) nil
+               (undo-tree-node-previous node) nil)
           ;; if new root has branches, or new root is current node, next node
           ;; to discard is oldest leaf, otherwise it's new root
           (if (or (> (length (undo-tree-node-next node)) 1)



reply via email to

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