]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't assume term-current-row cache is valid (Bug#31193)
authorNoam Postavsky <npostavs@gmail.com>
Tue, 17 Apr 2018 23:17:18 +0000 (19:17 -0400)
committerNoam Postavsky <npostavs@gmail.com>
Wed, 18 Apr 2018 11:33:27 +0000 (07:33 -0400)
* lisp/term.el (term-down): Call `term-current-row' instead of
directly accessing the variable `term-current-row.  Following a resize
of the terminal's window, `term-current-row' is reset to nil, so it is
not safe to assume it is a number.

lisp/term.el

index 0a5efa4abc9b758a317bb285316f98074e6c53d5..6860ea6934246df796ea187f4b7952e53799e502 100644 (file)
@@ -3764,7 +3764,7 @@ all pending output has been dealt with."))
   (let ((start-column (term-horizontal-column)))
     (when (and check-for-scroll (or term-scroll-with-delete term-pager-count))
       (setq down (term-handle-scroll down)))
-    (unless (and (= term-current-row 0) (< down 0))
+    (unless (and (= (term-current-row) 0) (< down 0))
       (term-adjust-current-row-cache down)
       (when (or (/= (point) (point-max)) (< down 0))
        (setq down (- down (term-vertical-motion down)))))
@@ -3774,7 +3774,7 @@ all pending output has been dealt with."))
           (setq term-current-column 0)
           (setq term-start-line-column 0))
          (t
-          (when (= term-current-row 0)
+          (when (= (term-current-row) 0)
             ;; Insert lines if at the beginning.
             (save-excursion (term-insert-char ?\n (- down)))
             (save-excursion