diff options
author | Juri Linkov <juri@jurta.org> | 2010-12-20 01:18:15 +0000 |
---|---|---|
committer | Juri Linkov <juri@jurta.org> | 2010-12-20 01:18:15 +0000 |
commit | 957e5dd1e98253145a6d8bf5dd392c74ac4b8409 (patch) | |
tree | 5cc26d4fcf8f142671b4bdd489d93a982ff3cd54 /lisp/isearch.el | |
parent | d3658de7373f55d5f153748aafe82e5806672085 (diff) | |
download | emacs-957e5dd1e98253145a6d8bf5dd392c74ac4b8409.tar.gz |
* 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).
Diffstat (limited to 'lisp/isearch.el')
-rw-r--r-- | lisp/isearch.el | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/isearch.el b/lisp/isearch.el index 3b04fa270b0..afc18cae127 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -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) |