]> git.eshelyaron.com Git - emacs.git/commitdiff
(text-property-search-forward): Fix search at the end
authorLars Ingebrigtsen <larsi@gnus.org>
Sun, 22 Apr 2018 14:58:10 +0000 (16:58 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Sun, 22 Apr 2018 14:58:10 +0000 (16:58 +0200)
* 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

index cd4471a045cfbead809959ea73686eb702d43b4d..ce7733acb27140d7213b19700db8a85795604811 100644 (file)
@@ -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)