comint.el (comint-output-filter): Fix rear-nonsticky property placement.
authorVitalie Spinu <spinuvit@gmail.com>
Fri, 20 Dec 2013 06:25:19 +0000 (14:25 +0800)
committerChong Yidong <cyd@gnu.org>
Fri, 20 Dec 2013 06:25:19 +0000 (14:25 +0800)
Fixes: debbugs:16010

lisp/ChangeLog
lisp/comint.el

index 416f9a8..2e0db47 100644 (file)
@@ -1,3 +1,8 @@
+2013-12-20  Vitalie Spinu  <spinuvit@gmail.com>
+
+       * comint.el (comint-output-filter): Fix rear-nonsticky property
+       placement (Bug#16010).
+
 2013-12-20  Chong Yidong  <cyd@gnu.org>
 
        * faces.el (read-color): Minor fix for completion function.
index 5cdec45..d7e9280 100644 (file)
@@ -2062,23 +2062,22 @@ Make backspaces delete the previous character."
            (let ((prompt-start (save-excursion (forward-line 0) (point)))
                  (inhibit-read-only t))
              (when comint-prompt-read-only
-                (with-silent-modifications
-                  (or (= (point-min) prompt-start)
-                      (get-text-property (1- prompt-start) 'read-only)
-                      (put-text-property
-                       (1- prompt-start) prompt-start 'read-only 'fence))
-                  (add-text-properties
-                   prompt-start (point)
-                   '(read-only t rear-nonsticky t front-sticky (read-only)))))
+               (with-silent-modifications
+                 (or (= (point-min) prompt-start)
+                     (get-text-property (1- prompt-start) 'read-only)
+                     (put-text-property (1- prompt-start)
+                                        prompt-start 'read-only 'fence))
+                 (add-text-properties prompt-start (point)
+                                      '(read-only t front-sticky (read-only)))))
              (when comint-last-prompt
                (remove-text-properties (car comint-last-prompt)
                                        (cdr comint-last-prompt)
                                        '(font-lock-face)))
              (setq comint-last-prompt
                    (cons (copy-marker prompt-start) (point-marker)))
-             (add-text-properties (car comint-last-prompt)
-                                  (cdr comint-last-prompt)
-                                  '(font-lock-face comint-highlight-prompt)))
+             (add-text-properties prompt-start (point)
+                                  '(rear-nonsticky t
+                                    font-lock-face comint-highlight-prompt)))
            (goto-char saved-point)))))))
 
 (defun comint-preinput-scroll-to-bottom ()