* lisp/isearch.el (isearch-search-and-update): Let-bind 'isearch-cmds'.

When 'isearch-wrap-pause' is 'no' or 'no-ding', let-bind 'isearch-cmds'
to avoid changing it by 'isearch-push-state' in 'isearch-repeat',
so that a later DEL (isearch-delete-char) doesn't stop at the
intermediate failing state (bug#68158).
This commit is contained in:
Juri Linkov 2024-01-05 09:39:04 +02:00
parent 9308d9a74a
commit dc9d02f8a0

View file

@ -2844,7 +2844,8 @@ The command accepts Unicode names like \"smiling face\" or
(isearch-search)
(when (and (memq isearch-wrap-pause '(no no-ding))
(not isearch-success))
(isearch-repeat (if isearch-forward 'forward 'backward)))))
(let ((isearch-cmds isearch-cmds))
(isearch-repeat (if isearch-forward 'forward 'backward))))))
(isearch-push-state)
(if isearch-op-fun (funcall isearch-op-fun))
(isearch-update))