From abdb9b8306ccc3dc1d0603017466c023f09b9228 Mon Sep 17 00:00:00 2001 From: Masatake YAMATO Date: Thu, 25 Mar 2004 18:05:29 +0000 Subject: [PATCH] * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays. * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range. * editfns.c (Ftranspose_regions): Likewise. * lisp.h (top_level): Likewise. --- src/ChangeLog | 12 ++++++++++++ src/buffer.c | 2 +- src/editfns.c | 2 +- src/insdel.c | 8 ++++++-- src/lisp.h | 2 +- 5 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 22a1851db70..ce03ac5ccda 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,15 @@ +2004-03-26 Masatake YAMATO + + * insdel.c (adjust_markers_for_insert): Call + fix_start_end_in_overlays. + + * buffer.c (fix_start_end_in_overlays): Rename + fix_overlays_in_range. + + * editfns.c (Ftranspose_regions): Likewise. + + * lisp.h (top_level): Likewise. + 2004-03-20 Jan Dj,Ad(Brv * xterm.c (handle_one_xevent): Do not pass key press events to diff --git a/src/buffer.c b/src/buffer.c index 27b12845c50..08031a0d72b 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -3293,7 +3293,7 @@ adjust_overlays_for_delete (pos, length) If so, we'll reverse the endpoints. Can you think of anything better to do in this situation? */ void -fix_overlays_in_range (start, end) +fix_start_end_in_overlays (start, end) register int start, end; { Lisp_Object overlay; diff --git a/src/editfns.c b/src/editfns.c index 51435af0bb2..df183155c4b 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -4157,7 +4157,7 @@ Transposing beyond buffer boundaries is an error. */) transpose_markers (start1, end1, start2, end2, start1_byte, start1_byte + len1_byte, start2_byte, start2_byte + len2_byte); - fix_overlays_in_range (start1, end2); + fix_start_end_in_overlays (start1, end2); } return Qnil; diff --git a/src/insdel.c b/src/insdel.c index 88bf1ddd085..5e3f69161e0 100644 --- a/src/insdel.c +++ b/src/insdel.c @@ -441,9 +441,13 @@ adjust_markers_for_insert (from, from_byte, to, to_byte, before_markers) } /* Adjusting only markers whose insertion-type is t may result in - disordered overlays in the slot `overlays_before'. */ + - disordered start and end in overlays, and + - disordered overlays in the slot `overlays_before' of current_buffer. */ if (adjusted) - fix_overlays_before (current_buffer, from, to); + { + fix_start_end_in_overlays(from, to); + fix_overlays_before (current_buffer, from, to); + } } /* Adjust point for an insertion of NBYTES bytes, which are NCHARS characters. diff --git a/src/lisp.h b/src/lisp.h index 9b69eaee3bc..8f25e19b33c 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -2656,7 +2656,7 @@ EXFUN (Foverlay_start, 1); EXFUN (Foverlay_end, 1); extern void adjust_overlays_for_insert P_ ((EMACS_INT, EMACS_INT)); extern void adjust_overlays_for_delete P_ ((EMACS_INT, EMACS_INT)); -extern void fix_overlays_in_range P_ ((int, int)); +extern void fix_start_end_in_overlays P_ ((int, int)); extern void report_overlay_modification P_ ((Lisp_Object, Lisp_Object, int, Lisp_Object, Lisp_Object, Lisp_Object)); extern int overlay_touches_p P_ ((int)); -- 2.39.2