aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2000-11-24 19:29:26 +0000
committerGerd Moellmann2000-11-24 19:29:26 +0000
commit2be8f1844877025da964cc34a38b191eaf4b63c5 (patch)
treecd16c8ff4e5857bdcc925ec7ab851c9d7fe2836c /src
parent105602b1719bf275dc59e5e77d4d54840f02ab2c (diff)
downloademacs-2be8f1844877025da964cc34a38b191eaf4b63c5.tar.gz
emacs-2be8f1844877025da964cc34a38b191eaf4b63c5.zip
(init_from_display_pos): If POS says we're already after
an overlay string ending at POS, make sure to pop the iterator because it will be in front of that overlay string. When POS is ZV, we've thereby also ``processed'' overlay strings at ZV.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/xdisp.c15
2 files changed, 19 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index ecbe9feb14c..2d32e169654 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
12000-11-24 Gerd Moellmann <gerd@gnu.org> 12000-11-24 Gerd Moellmann <gerd@gnu.org>
2 2
3 * xdisp.c (init_from_display_pos): If POS says we're already after
4 an overlay string ending at POS, make sure to pop the iterator
5 because it will be in front of that overlay string. When POS is
6 ZV, we've thereby also ``processed'' overlay strings at ZV.
7
3 * xfaces.c (lface_from_face_name): Function comment fix. 8 * xfaces.c (lface_from_face_name): Function comment fix.
4 9
52000-11-24 Miles Bader <miles@gnu.org> 102000-11-24 Miles Bader <miles@gnu.org>
diff --git a/src/xdisp.c b/src/xdisp.c
index 8d5d2b6b6f6..6cec7760926 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1730,7 +1730,20 @@ init_from_display_pos (it, w, pos)
1730 it->current.string_pos = pos->string_pos; 1730 it->current.string_pos = pos->string_pos;
1731 it->method = next_element_from_string; 1731 it->method = next_element_from_string;
1732 } 1732 }
1733 else if (CHARPOS (pos->string_pos) >= 0) 1733 else if (it->current.overlay_string_index >= 0)
1734 {
1735 /* If POS says we're already after an overlay string ending at
1736 POS, make sure to pop the iterator because it will be in
1737 front of that overlay string. When POS is ZV, we've thereby
1738 also ``processed'' overlay strings at ZV. */
1739 pop_it (it);
1740 it->current.overlay_string_index = -1;
1741 it->method = next_element_from_buffer;
1742 if (CHARPOS (pos->pos) == ZV)
1743 it->overlay_strings_at_end_processed_p = 1;
1744 }
1745
1746 if (CHARPOS (pos->string_pos) >= 0)
1734 { 1747 {
1735 /* Recorded position is not in an overlay string, but in another 1748 /* Recorded position is not in an overlay string, but in another
1736 string. This can only be a string from a `display' property. 1749 string. This can only be a string from a `display' property.