Fix 'text-property-search-backward' with 1-char long properties

* lisp/emacs-lisp/text-property-search.el
(text-property--find-end-backward): Don't miss the end of
text-property value at point.  This fixes searches backward when
the property is on a single character position.  (Bug#58937)
This commit is contained in:
Eli Zaretskii 2022-11-03 11:25:50 +02:00
parent 1c9d7fba0a
commit dffc34a2d4

View file

@ -208,8 +208,14 @@ and if a matching region is found, place point at the start of the region."
(goto-char end)
(setq ended t)))))
;; End this at the first place the property changes value.
(setq end (previous-single-property-change
(point) property nil (point-min)))
(setq end
(if (and (> (point) (point-min))
(text-property--match-p
value (get-text-property (1- (point)) property)
predicate))
(previous-single-property-change (point)
property nil (point-min))
(point)))
(goto-char end))
(make-prop-match :beginning end
:end (1+ start)