(get_overlay_strings): Set iterator's end_charpos.

(set_iterator_to_next): If a string from a display property ends,
consider the case that this might also be the end of an
overlay string having the display property.
This commit is contained in:
Gerd Moellmann 2001-03-30 18:35:46 +00:00
parent 12700f406a
commit b2046df875
2 changed files with 10 additions and 2 deletions

View file

@ -1,8 +1,13 @@
2001-03-30 Gerd Moellmann <gerd@gnu.org>
* xdisp.c (get_overlay_strings): Set iterator's end_charpos.
(set_iterator_to_next): If a string from a display property ends,
consider the case that this might also be the end of an
overlay string having the display property.
* xdisp.c (handle_display_prop): Fix recognition of subproperty
lists.
* xdisp.c (reseat_to_string): Undo last change.
* dispnew.c (adjust_glyph_matrix): Don't try to reuse the current

View file

@ -3595,8 +3595,9 @@ get_overlay_strings (it)
/* Set up IT to deliver display elements from the first overlay
string. */
IT_STRING_CHARPOS (*it) = IT_STRING_BYTEPOS (*it) = 0;
it->stop_charpos = 0;
it->string = it->overlay_strings[0];
it->stop_charpos = 0;
it->end_charpos = XSTRING (it->string)->size;
it->multibyte_p = STRING_MULTIBYTE (it->string);
xassert (STRINGP (it->string));
it->method = next_element_from_string;
@ -4375,6 +4376,8 @@ set_iterator_to_next (it, reseat_p)
pop_it (it);
if (!STRINGP (it->string))
it->method = next_element_from_buffer;
else
goto consider_string_end;
}
}
}