* lisp/isearch.el (isearch-lazy-highlight-error): New variable.

(isearch-lazy-highlight-new-loop): Compare `isearch-error' and
`isearch-lazy-highlight-error'.  Set `isearch-lazy-highlight-error'
to the current value of `isearch-error' (Bug#7468).
This commit is contained in:
Juri Linkov 2010-12-20 01:18:15 +00:00
parent d3658de737
commit 957e5dd1e9
2 changed files with 13 additions and 1 deletions

View file

@ -1,3 +1,10 @@
2010-12-20 Juri Linkov <juri@jurta.org>
* isearch.el (isearch-lazy-highlight-error): New variable.
(isearch-lazy-highlight-new-loop): Compare `isearch-error' and
`isearch-lazy-highlight-error'. Set `isearch-lazy-highlight-error'
to the current value of `isearch-error' (Bug#7468).
2010-12-17 Chong Yidong <cyd@stupidchicken.com>
* help-fns.el (describe-variable): Don't emit trailing whitespace

View file

@ -2579,6 +2579,7 @@ since they have special meaning in a regexp."
(defvar isearch-lazy-highlight-regexp nil)
(defvar isearch-lazy-highlight-space-regexp nil)
(defvar isearch-lazy-highlight-forward nil)
(defvar isearch-lazy-highlight-error nil)
(defun lazy-highlight-cleanup (&optional force)
"Stop lazy highlighting and remove extra highlighting from current buffer.
@ -2620,9 +2621,13 @@ by other Emacs features."
(not (= (window-end) ; Window may have been split/joined.
isearch-lazy-highlight-window-end))
(not (eq isearch-forward
isearch-lazy-highlight-forward))))
isearch-lazy-highlight-forward))
;; In case we are recovering from an error.
(not (equal isearch-error
isearch-lazy-highlight-error))))
;; something important did indeed change
(lazy-highlight-cleanup t) ;kill old loop & remove overlays
(setq isearch-lazy-highlight-error isearch-error)
(when (not isearch-error)
(setq isearch-lazy-highlight-start-limit beg
isearch-lazy-highlight-end-limit end)