* lisp/replace.el (occur-rename-buffer): Check for overlay (bug#46268).

(occur-1): Don't use occur--garbage-collect-revert-args
when reverting the Occur buffer with same bufs.
This commit is contained in:
Juri Linkov 2021-02-04 11:17:54 +02:00
parent a8958640c4
commit 5666955379

View file

@ -1545,7 +1545,10 @@ You can add this to `occur-hook' if you always want a separate
(with-current-buffer
(if (eq major-mode 'occur-mode) (current-buffer) (get-buffer "*Occur*"))
(rename-buffer (concat "*Occur: "
(mapconcat #'buffer-name
(mapconcat (lambda (boo)
(buffer-name (if (overlayp boo)
(overlay-buffer boo)
boo)))
(car (cddr occur-revert-arguments)) "/")
"*")
(or unique-p (not interactive-p)))))
@ -1779,7 +1782,8 @@ See also `multi-occur'."
42)
(window-width))
"" (occur-regexp-descr regexp))))
(occur--garbage-collect-revert-args)
(unless (eq bufs (nth 2 occur-revert-arguments))
(occur--garbage-collect-revert-args))
(setq occur-revert-arguments (list regexp nlines bufs))
(if (= count 0)
(kill-buffer occur-buf)