Subject: bug#49963: 28.0.50; isearch failing in Dired after rectangle-mark-mode and query-replace

From: Eli Zaretskii <[email-masked]>
Date: Tue, 10 Aug 2021 16:38:29 +0300

> From: Juri Linkov <[email-masked]>
> Date: Tue, 10 Aug 2021 10:03:39 +0300
> Cc: [email-masked], laslydone <[email-masked]>
> 
> Stefan, please help.  Wdired adds advice on a buffer-local isearch-filter-predicate,
> and perform-replace adds advice on a let-bound isearch-filter-predicate
> that changes the global value.  This is the minimal test case:
> 
>   (add-function :after-while (local 'isearch-filter-predicate)
>                 (lambda (&rest _) 'filter-local))
> 
>   (let ((isearch-filter-predicate isearch-filter-predicate))
>     (add-function :after-while isearch-filter-predicate
>                   (lambda (&rest _) 'filter-letbound)))

Regardless of how we solve this issue, could we please NOT use advices
in such cases?  is there really no other reasonable solution for this,
like perhaps using some existing Isearch hook or (gasp!) introducing a
new one?

TIA