diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2022-11-05 17:22:37 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2022-11-05 17:22:37 -0400 |
commit | 6e5ec085510ccf52ac6cb07c3a1a2778324a1d89 (patch) | |
tree | 0ad67bf3aa5a7a6c9eb9e01754e5f57da19dd4b6 /src/buffer.h | |
parent | 5c9895fffe4e34b7a31b0a8e4bce0b59a4bc0326 (diff) | |
download | emacs-6e5ec085510ccf52ac6cb07c3a1a2778324a1d89.tar.gz |
buffer.c: evaporate overlays in all indirect buffers
This fixes bug#58928. The patch works by moving the
`evaporate_overlays` check closer to `itree_delete_gap`.
* src/buffer.c (adjust_overlays_for_delete_in_buffer): New function,
integrating the functionality of `evaporate_overlays`.
(adjust_overlays_for_delete): Use it.
(evaporate_overlays): Delete function.
* src/buffer.h (evaporate_overlays): Delete declaration.
* src/insdel.c (adjust_markers_for_replace): Minor optimization.
(adjust_after_replace, replace_range, replace_range_2, del_range_2):
Don't call `evaporate_overlays`.
* test/src/buffer-tests.el (buffer-tests--overlays-indirect-evaporate):
Remove the `:expected-result :failed` attribute.
Diffstat (limited to 'src/buffer.h')
-rw-r--r-- | src/buffer.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/buffer.h b/src/buffer.h index 3ea4125645d..2e80c8a7b04 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -1170,7 +1170,6 @@ extern EMACS_INT fix_position (Lisp_Object); extern void delete_all_overlays (struct buffer *); extern void reset_buffer (struct buffer *); extern void compact_buffer (struct buffer *); -extern void evaporate_overlays (ptrdiff_t); extern ptrdiff_t overlays_at (ptrdiff_t, bool, Lisp_Object **, ptrdiff_t *, ptrdiff_t *); extern ptrdiff_t overlays_in (ptrdiff_t, ptrdiff_t, bool, Lisp_Object **, ptrdiff_t *, bool, bool, ptrdiff_t *); |