[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#60467: 30.0.50; primitive-undo: Changes to be undone by function dif
From: |
Stefan Monnier |
Subject: |
bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced |
Date: |
Tue, 03 Jan 2023 10:16:54 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
> <undo element 1> <timestamp> <undo element 2> <timestamp> nil <undo element 3>
>
> ofter body has been evaluated, the buffer-undo-list after
> combine-change-call is
>
> (apply ... #'undo--wrap-and-run-primitive-undo ... (<undo element 1>))
> <timestamp> <undo element 2> <timestamp> nil <undo element 3>
>
> which is clearly wrong
Indeed. Which begs the question: why does the current code stop when it
sees a timestamp?
Alan? Do you remember why you did that?
What would go wrong if we applied a patch like the one below?
Stefan
diff --git a/lisp/subr.el b/lisp/subr.el
index 5fb150994ec..6f51ac90ce5 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -4972,10 +4972,11 @@ combine-change-calls-1
;; In case garbage collection has removed OLD-BUL.
(cdr ptr)
;; Don't include a timestamp entry.
- (not (and (consp (cdr ptr))
- (consp (cadr ptr))
- (eq (caadr ptr) t)
- (setq old-bul (cdr ptr)))))
+ ;; (not (and (consp (cdr ptr))
+ ;; (consp (cadr ptr))
+ ;; (eq (caadr ptr) t)
+ ;; (setq old-bul (cdr ptr))))
+ )
(setq ptr (cdr ptr)))
(unless (cdr ptr)
(message "combine-change-calls: buffer-undo-list broken"))
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, (continued)
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Eli Zaretskii, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Gregory Heytings, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Stefan Monnier, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Gregory Heytings, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Eli Zaretskii, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Gregory Heytings, 2023/01/04
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Gregory Heytings, 2023/01/03
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced,
Stefan Monnier <=
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Gregory Heytings, 2023/01/03
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Stefan Monnier, 2023/01/03
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Alan Mackenzie, 2023/01/08
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Stefan Monnier, 2023/01/09
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Eli Zaretskii, 2023/01/09
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Stefan Monnier, 2023/01/13
- bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Eli Zaretskii, 2023/01/14
bug#60467: 30.0.50; primitive-undo: Changes to be undone by function different from announced, Ihor Radchenko, 2023/01/02