aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2005-12-23 17:37:50 +0000
committerEli Zaretskii2005-12-23 17:37:50 +0000
commitbab3eee1568a8899b8a42b5350b3e9e66e88a824 (patch)
treeecaa15ae13637db3843fac559827eecf445c4514 /src
parent1fafa158b481027f28f10162e7371862c41ee9af (diff)
downloademacs-bab3eee1568a8899b8a42b5350b3e9e66e88a824.tar.gz
emacs-bab3eee1568a8899b8a42b5350b3e9e66e88a824.zip
(insert, insert_and_inherit, insert_before_markers)
(insert_before_markers_and_inherit): Make sure FROM is correct when `after-change-functions' are called.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/insdel.c30
2 files changed, 22 insertions, 14 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 5e5fa3d62c4..69bc634be06 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
12005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
2
3 * insdel.c (insert, insert_and_inherit, insert_before_markers)
4 (insert_before_markers_and_inherit): Make sure FROM is correct
5 when `after-change-functions' are called.
6
12005-12-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 72005-12-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2 8
3 * xfns.c (Fx_uses_old_gtk_dialog): New function. 9 * xfns.c (Fx_uses_old_gtk_dialog): New function.
diff --git a/src/insdel.c b/src/insdel.c
index fd416037241..a63dce14928 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -749,9 +749,10 @@ insert (string, nbytes)
749{ 749{
750 if (nbytes > 0) 750 if (nbytes > 0)
751 { 751 {
752 int opoint = PT; 752 int len = chars_in_text (string, nbytes), opoint;
753 insert_1 (string, nbytes, 0, 1, 0); 753 insert_1_both (string, len, nbytes, 0, 1, 0);
754 signal_after_change (opoint, 0, PT - opoint); 754 opoint = PT - len;
755 signal_after_change (opoint, 0, len);
755 update_compositions (opoint, PT, CHECK_BORDER); 756 update_compositions (opoint, PT, CHECK_BORDER);
756 } 757 }
757} 758}
@@ -765,9 +766,10 @@ insert_and_inherit (string, nbytes)
765{ 766{
766 if (nbytes > 0) 767 if (nbytes > 0)
767 { 768 {
768 int opoint = PT; 769 int len = chars_in_text (string, nbytes), opoint;
769 insert_1 (string, nbytes, 1, 1, 0); 770 insert_1_both (string, len, nbytes, 1, 1, 0);
770 signal_after_change (opoint, 0, PT - opoint); 771 opoint = PT - len;
772 signal_after_change (opoint, 0, len);
771 update_compositions (opoint, PT, CHECK_BORDER); 773 update_compositions (opoint, PT, CHECK_BORDER);
772 } 774 }
773} 775}
@@ -813,10 +815,10 @@ insert_before_markers (string, nbytes)
813{ 815{
814 if (nbytes > 0) 816 if (nbytes > 0)
815 { 817 {
816 int opoint = PT; 818 int len = chars_in_text (string, nbytes), opoint;
817 819 insert_1_both (string, len, nbytes, 0, 1, 1);
818 insert_1 (string, nbytes, 0, 1, 1); 820 opoint = PT - len;
819 signal_after_change (opoint, 0, PT - opoint); 821 signal_after_change (opoint, 0, len);
820 update_compositions (opoint, PT, CHECK_BORDER); 822 update_compositions (opoint, PT, CHECK_BORDER);
821 } 823 }
822} 824}
@@ -830,10 +832,10 @@ insert_before_markers_and_inherit (string, nbytes)
830{ 832{
831 if (nbytes > 0) 833 if (nbytes > 0)
832 { 834 {
833 int opoint = PT; 835 int len = chars_in_text (string, nbytes), opoint;
834 836 insert_1_both (string, len, nbytes, 1, 1, 1);
835 insert_1 (string, nbytes, 1, 1, 1); 837 opoint = PT - len;
836 signal_after_change (opoint, 0, PT - opoint); 838 signal_after_change (opoint, 0, len);
837 update_compositions (opoint, PT, CHECK_BORDER); 839 update_compositions (opoint, PT, CHECK_BORDER);
838 } 840 }
839} 841}