aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa1998-08-28 12:33:52 +0000
committerKenichi Handa1998-08-28 12:33:52 +0000
commit4a7cf15f4792060922601fe1a8f2cc1024ac2273 (patch)
treeeb6948f3bcb1941cfb616ba0657de0bca434dec2 /src
parentdf2ddb2d286c264eeba546f930456412ac9526d0 (diff)
downloademacs-4a7cf15f4792060922601fe1a8f2cc1024ac2273.tar.gz
emacs-4a7cf15f4792060922601fe1a8f2cc1024ac2273.zip
(adjust_after_replace): Fix the code to recode undo
information for the case that `before combining' happens. Remove text properties which are added to the new text by offset_intervals.
Diffstat (limited to 'src')
-rw-r--r--src/insdel.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/insdel.c b/src/insdel.c
index dc8cd66ee06..2faa53ee174 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -1601,7 +1601,7 @@ adjust_after_replace (from, from_byte, prev_text, len, len_byte)
1601 len, len_byte, 1601 len, len_byte,
1602 combined_before_bytes, combined_after_bytes); 1602 combined_before_bytes, combined_after_bytes);
1603 if (STRINGP (prev_text)) 1603 if (STRINGP (prev_text))
1604 record_delete (from, prev_text); 1604 record_delete (from - !!combined_before_bytes, prev_text);
1605 record_insert (from - !!combined_before_bytes, 1605 record_insert (from - !!combined_before_bytes,
1606 len - combined_before_bytes + !!combined_before_bytes); 1606 len - combined_before_bytes + !!combined_before_bytes);
1607 1607
@@ -1611,7 +1611,13 @@ adjust_after_replace (from, from_byte, prev_text, len, len_byte)
1611 adjust_overlays_for_delete (from, nchars_del - len); 1611 adjust_overlays_for_delete (from, nchars_del - len);
1612#ifdef USE_TEXT_PROPERTIES 1612#ifdef USE_TEXT_PROPERTIES
1613 if (BUF_INTERVALS (current_buffer) != 0) 1613 if (BUF_INTERVALS (current_buffer) != 0)
1614 offset_intervals (current_buffer, from, len - nchars_del); 1614 {
1615 offset_intervals (current_buffer, from, len - nchars_del);
1616 if (len - nchars_del > 0)
1617 Fset_text_properties (make_number (from),
1618 make_number (from + len - nchars_del),
1619 Qnil, Qnil);
1620 }
1615#endif 1621#endif
1616 1622
1617 { 1623 {