From 59c3c53efa43e82f0f2e48a4c27d5bd623201d4a Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Fri, 13 Jan 2023 17:38:04 -0500 Subject: [PATCH] * lisp/subr.el (combine-change-calls-1): Fix bug#60467 Don't stop at timestamps. Strip them for now, to be on the safe side. Don't merge into `master` where we'll use a better fix. --- lisp/subr.el | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lisp/subr.el b/lisp/subr.el index 485ca9e4f1b..ab451b5613b 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -4946,13 +4946,13 @@ the function `undo--wrap-and-run-primitive-undo'." (progn (while (and (not (eq (cdr ptr) old-bul)) ;; 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))))) - (setq ptr (cdr ptr))) + (cdr ptr)) + (if (and (consp (cdr ptr)) + (consp (cadr ptr)) + (eq (caadr ptr) t)) + ;; Don't include a timestamp entry. + (setcdr ptr (cddr ptr)) + (setq ptr (cdr ptr)))) (unless (cdr ptr) (message "combine-change-calls: buffer-undo-list broken")) (setcdr ptr nil) -- 2.39.2