bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#66403: [PATCH] Use delete-all-overlays in clean-mode


From: Joseph Turner
Subject: bug#66403: [PATCH] Use delete-all-overlays in clean-mode
Date: Sun, 08 Oct 2023 14:21:13 -0700

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Sun, 08 Oct 2023 02:57:25 -0700
>> From:  Joseph Turner via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>>
>> Is there a reason to use dolist instead of delete-all-overlays?
>
> Can the buffer be narrowed?

Ah, good catch. The following snippet only deletes ov1, whereas if you
replace the dolist with delete-all-overlays, both are deleted.

(with-current-buffer (generate-new-buffer "test-overlay-deletion")
  (insert "hello\n\nworld")
  (let ((ov1 (make-overlay 0 6))
        (ov2 (make-overlay 8 13)))
    (overlay-put ov1 'display "aaaaa")
    (overlay-put ov2 'display "bbbbb"))
  (narrow-to-region 1 6)
  ;; (delete-all-overlays)
  (dolist (overlay (overlays-in (point-min) (point-max)))
    (delete-overlay overlay))
  (widen)
  (pop-to-buffer (current-buffer)))

Joseph





reply via email to

[Prev in Thread] Current Thread [Next in Thread]