]> git.eshelyaron.com Git - emacs.git/commitdiff
Stop moving markers during erase-in-line
authorDaniel Colascione <dancol@dancol.org>
Fri, 7 Mar 2025 19:10:09 +0000 (11:10 -0800)
committerEshel Yaron <me@eshelyaron.com>
Sun, 9 Mar 2025 10:24:32 +0000 (11:24 +0100)
We shouldn't move a line marker just because we cleared a line next to
it.  clear-in-line is defined not to affect line structure.

* lisp/term.el (term-erase-in-line): use insert-before-markers

(cherry picked from commit 6f19715937bbeaec5fb80ee9dad0d14b7712a989)

lisp/term.el

index 0048e0c690856dd63e3e4fd6a62e0e5516f3ae7b..c03a5c26c89c1430d3e68e944849336963e95b6e 100644 (file)
@@ -4031,7 +4031,10 @@ The top-most line is line 0."
       ;; extra space when wrapped is false.
       (when wrapped
        (insert ? ))
-      (insert ?\n)
+      ;; If there's a marker at the start of the next line, we shouldn't
+      ;; disturb it: erase-in-line doesn't change logical
+      ;; line structure.
+      (insert-before-markers ?\n)
       (put-text-property saved-point (point) 'font-lock-face 'default)
       (goto-char saved-point))))