(insert_1): Adjust overlay center after inserting.

(insert_from_string_1, insert_from_buffer_1): Likewise.
(del_range_1): Adjust overlay center after deleting.
This commit is contained in:
Karl Heuer 1995-04-17 23:16:23 +00:00
parent 423cdb4617
commit adde48587a

View file

@ -370,6 +370,7 @@ insert_1 (string, length, inherit, prepare)
GPT += length;
ZV += length;
Z += length;
adjust_overlays_for_insert (PT, length);
adjust_point (length);
#ifdef USE_TEXT_PROPERTIES
@ -436,6 +437,7 @@ insert_from_string_1 (string, pos, length, inherit)
GPT += length;
ZV += length;
Z += length;
adjust_overlays_for_insert (PT, length);
/* Only defined if Emacs is compiled with USE_TEXT_PROPERTIES */
graft_intervals_into_buffer (XSTRING (string)->intervals, PT, length,
@ -510,6 +512,7 @@ insert_from_buffer_1 (buf, pos, length, inherit)
GPT += length;
ZV += length;
Z += length;
adjust_overlays_for_insert (PT, length);
adjust_point (length);
/* Only defined if Emacs is compiled with USE_TEXT_PROPERTIES */
@ -636,6 +639,10 @@ del_range_1 (from, to, prepare)
to point at the end of the text before the gap. */
adjust_markers (to + GAP_SIZE, to + GAP_SIZE, - numdel - GAP_SIZE);
/* Adjust the overlay center as needed. This must be done after
adjusting the markers that bound the overlays. */
adjust_overlays_for_delete (from, numdel);
GAP_SIZE += numdel;
ZV -= numdel;
Z -= numdel;