]> git.eshelyaron.com Git - emacs.git/commitdiff
(insert, insert_and_inherit, insert_before_markers)
authorEli Zaretskii <eliz@gnu.org>
Fri, 23 Dec 2005 17:37:50 +0000 (17:37 +0000)
committerEli Zaretskii <eliz@gnu.org>
Fri, 23 Dec 2005 17:37:50 +0000 (17:37 +0000)
(insert_before_markers_and_inherit): Make sure FROM is correct when
`after-change-functions' are called.

src/ChangeLog
src/insdel.c

index 5e5fa3d62c46eb0c216893cf02c0dae7226e9be1..69bc634be0662b4f1c02431682eb6528a3d32ae7 100644 (file)
@@ -1,3 +1,9 @@
+2005-12-23  Martin Rudalics  <rudalics@gmx.at>  (tiny change)
+
+       * insdel.c (insert, insert_and_inherit, insert_before_markers)
+       (insert_before_markers_and_inherit): Make sure FROM is correct
+       when `after-change-functions' are called.
+
 2005-12-23  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
 
        * xfns.c (Fx_uses_old_gtk_dialog): New function.
index fd416037241cc46bbb076d1da9d759e7356803f6..a63dce14928850bd539a6a2fe3eb862322d6251d 100644 (file)
@@ -749,9 +749,10 @@ insert (string, nbytes)
 {
   if (nbytes > 0)
     {
-      int opoint = PT;
-      insert_1 (string, nbytes, 0, 1, 0);
-      signal_after_change (opoint, 0, PT - opoint);
+      int len = chars_in_text (string, nbytes), opoint;
+      insert_1_both (string, len, nbytes, 0, 1, 0);
+      opoint = PT - len;
+      signal_after_change (opoint, 0, len);
       update_compositions (opoint, PT, CHECK_BORDER);
     }
 }
@@ -765,9 +766,10 @@ insert_and_inherit (string, nbytes)
 {
   if (nbytes > 0)
     {
-      int opoint = PT;
-      insert_1 (string, nbytes, 1, 1, 0);
-      signal_after_change (opoint, 0, PT - opoint);
+      int len = chars_in_text (string, nbytes), opoint;
+      insert_1_both (string, len, nbytes, 1, 1, 0);
+      opoint = PT - len;
+      signal_after_change (opoint, 0, len);
       update_compositions (opoint, PT, CHECK_BORDER);
     }
 }
@@ -813,10 +815,10 @@ insert_before_markers (string, nbytes)
 {
   if (nbytes > 0)
     {
-      int opoint = PT;
-
-      insert_1 (string, nbytes, 0, 1, 1);
-      signal_after_change (opoint, 0, PT - opoint);
+      int len = chars_in_text (string, nbytes), opoint;
+      insert_1_both (string, len, nbytes, 0, 1, 1);
+      opoint = PT - len;
+      signal_after_change (opoint, 0, len);
       update_compositions (opoint, PT, CHECK_BORDER);
     }
 }
@@ -830,10 +832,10 @@ insert_before_markers_and_inherit (string, nbytes)
 {
   if (nbytes > 0)
     {
-      int opoint = PT;
-
-      insert_1 (string, nbytes, 1, 1, 1);
-      signal_after_change (opoint, 0, PT - opoint);
+      int len = chars_in_text (string, nbytes), opoint;
+      insert_1_both (string, len, nbytes, 1, 1, 1);
+      opoint = PT - len;
+      signal_after_change (opoint, 0, len);
       update_compositions (opoint, PT, CHECK_BORDER);
     }
 }