emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master e6edd17 2/2: (text-property-search-forward): Fix se


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] master e6edd17 2/2: (text-property-search-forward): Fix search at the end
Date: Sun, 22 Apr 2018 10:58:40 -0400 (EDT)

branch: master
commit e6edd177a93b36e969d72008b426deac51c86d9a
Author: Lars Ingebrigtsen <address@hidden>
Commit: Lars Ingebrigtsen <address@hidden>

    (text-property-search-forward): Fix search at the end
    
    * lisp/emacs-lisp/text-property-search.el
    (text-property-search-forward): Fix search at the end of the
    buffer with no text properties.
---
 lisp/emacs-lisp/text-property-search.el | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/lisp/emacs-lisp/text-property-search.el 
b/lisp/emacs-lisp/text-property-search.el
index cd4471a..ce7733a 100644
--- a/lisp/emacs-lisp/text-property-search.el
+++ b/lisp/emacs-lisp/text-property-search.el
@@ -58,12 +58,17 @@ value of PROPERTY at the start of the region."
     (let ((string (completing-read "Search for property: " obarray)))
       (when (> (length string) 0)
         (intern string obarray)))))
-  ;; We're standing in the property we're looking for, so find the
-  ;; end.
-  (if (and (text-property--match-p value (get-text-property (point) property)
-                                   predicate)
-           (not not-immediate))
-      (text-property--find-end-forward (point) property value predicate)
+  (cond
+   ;; No matches at the end of the buffer.
+   ((eobp)
+    nil)
+   ;; We're standing in the property we're looking for, so find the
+   ;; end.
+   ((and (text-property--match-p value (get-text-property (point) property)
+                                 predicate)
+         (not not-immediate))
+    (text-property--find-end-forward (point) property value predicate))
+   (t
     (let ((origin (point))
           (ended nil)
           pos)
@@ -86,7 +91,7 @@ value of PROPERTY at the start of the region."
               (goto-char origin)
               (setq ended t)))))
       (and (not (eq ended t))
-           ended))))
+           ended)))))
 
 (defun text-property--find-end-forward (start property value predicate)
   (let (end)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]