Commit 1097afe4 authored by Eli Zaretskii's avatar Eli Zaretskii

Fix bug #11653 with a crash when more than 16 overlay strings are loaded.

 src/xdisp.c (handle_face_prop): Use chunk-relative overlay string index when
 indexing into it->string_overlays array.
parent 2f07e6af
......@@ -3,7 +3,9 @@
* xdisp.c (set_cursor_from_row): Don't dereference glyphs_end. If
all the glyphs of the glyph row came from strings, and we have no
cursor positioning clues, put the cursor on the first glyph of the
row. (Bug#11653)
row.
(handle_face_prop): Use chunk-relative overlay string index when
indexing into it->string_overlays array. (Bug#11653)
2012-06-16 Andreas Schwab <schwab@linux-m68k.org>
......
......@@ -3691,7 +3691,8 @@ handle_face_prop (struct it *it)
int i;
Lisp_Object from_overlay
= (it->current.overlay_string_index >= 0
? it->string_overlays[it->current.overlay_string_index]
? it->string_overlays[it->current.overlay_string_index
% OVERLAY_STRING_CHUNK_SIZE]
: Qnil);
/* See if we got to this string directly or indirectly from
......@@ -3705,7 +3706,8 @@ handle_face_prop (struct it *it)
{
if (it->stack[i].current.overlay_string_index >= 0)
from_overlay
= it->string_overlays[it->stack[i].current.overlay_string_index];
= it->string_overlays[it->stack[i].current.overlay_string_index
% OVERLAY_STRING_CHUNK_SIZE];
else if (! NILP (it->stack[i].from_overlay))
from_overlay = it->stack[i].from_overlay;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment