* lisp/isearch.el: Fix lazy-highlighting and lazy-counting of hidden matches

* lisp/isearch.el (isearch-lazy-highlight-search): Let-bind
search-invisible to t when search-invisible is 'open' or when both
isearch-lazy-count and search-invisible are non-nil.  (Bug#40808)
This commit is contained in:
Juri Linkov 2020-04-29 02:49:44 +03:00
parent d83cc05a73
commit 85544f8ef5

View file

@ -319,7 +319,7 @@ this variable is set to the symbol `all-windows'."
"Show match numbers in the search prompt.
When both this option and `isearch-lazy-highlight' are non-nil,
show the current match number and the total number of matches
in the buffer (or its restriction)."
in the buffer (or its restriction), including all hidden matches."
:type 'boolean
:group 'lazy-count
:group 'isearch
@ -3866,7 +3866,10 @@ Attempt to do the search exactly the way the pending Isearch would."
(isearch-regexp-lax-whitespace
isearch-lazy-highlight-regexp-lax-whitespace)
(isearch-forward isearch-lazy-highlight-forward)
(search-invisible nil) ; don't match invisible text
;; Don't match invisible text unless it can be opened
;; or when counting matches and user can visit hidden matches
(search-invisible (or (eq search-invisible 'open)
(and isearch-lazy-count search-invisible)))
(retry t)
(success nil))
;; Use a loop like in `isearch-search'.