From: Stefan Monnier Date: Fri, 13 Jan 2023 22:38:04 +0000 (-0500) Subject: * lisp/subr.el (combine-change-calls-1): Fix bug#60467 X-Git-Tag: emacs-29.0.90~744 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=59c3c53efa43e82f0f2e48a4c27d5bd623201d4a;p=emacs.git * 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. --- 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)