aboutsummaryrefslogtreecommitdiffstats
path: root/src/bidi.c
diff options
context:
space:
mode:
authorEli Zaretskii <[email protected]>2011-06-25 19:14:01 +0300
committerEli Zaretskii <[email protected]>2011-06-25 19:14:01 +0300
commita1344e7d125a094bf49460f1a356f98fa86a8f9f (patch)
tree25029f10879deb153584d3541e0aac6365231288 /src/bidi.c
parent0c22566f00ee467af8d41ef7dc9f18c3b66630c5 (diff)
Initial version of display/overlay strings is working.
src/xdisp.c (set_iterator_to_next, get_visually_first_element): Use it->bidi_it.string.schars rather than it->string_nchars when testing whether we're beyond string end, because string_nchars is zero for strings that come from overlays and display properties. src/bidi.c (bidi_cache_iterator_state): Fix a bug with testing character positions against the cached range, when we use a stacked cache. src/dispextern.h (struct iterator_stack_entry): New member paragraph_embedding. src/xdisp.c (push_it, pop_it): Save and restore it.
Diffstat (limited to 'src/bidi.c')
-rw-r--r--src/bidi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/bidi.c b/src/bidi.c
index b518dd4578..0cd8deb47c 100644
--- a/src/bidi.c
+++ b/src/bidi.c
@@ -481,7 +481,7 @@ bidi_cache_iterator_state (struct bidi_it *bidi_it, int resolved)
if (idx > bidi_cache_start &&
(bidi_it->charpos > (bidi_cache[idx - 1].charpos
+ bidi_cache[idx - 1].nchars)
- || bidi_it->charpos < bidi_cache[0].charpos))
+ || bidi_it->charpos < bidi_cache[bidi_cache_start].charpos))
{
bidi_cache_reset ();
idx = bidi_cache_start;