diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/xdisp.c | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 193bb739766..4d493eab7b1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,7 +1,9 @@ | |||
| 1 | 2011-08-08 Eli Zaretskii <eliz@gnu.org> | 1 | 2011-08-08 Eli Zaretskii <eliz@gnu.org> |
| 2 | 2 | ||
| 3 | * xdisp.c (forward_to_next_line_start): Allow to use the | 3 | * xdisp.c (forward_to_next_line_start): Allow to use the |
| 4 | no-display-properties-and-no-overlays under bidi display. | 4 | no-display-properties-and-no-overlays under bidi display. Set |
| 5 | disp_pos in the bidi iterator to avoid searches for display | ||
| 6 | properties and overlays. | ||
| 5 | 7 | ||
| 6 | 2011-08-08 Chong Yidong <cyd@stupidchicken.com> | 8 | 2011-08-08 Chong Yidong <cyd@stupidchicken.com> |
| 7 | 9 | ||
diff --git a/src/xdisp.c b/src/xdisp.c index 2a46fe2dad5..1437aafef39 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -5551,6 +5551,14 @@ forward_to_next_line_start (struct it *it, int *skipped_p, | |||
| 5551 | { | 5551 | { |
| 5552 | struct bidi_it bprev; | 5552 | struct bidi_it bprev; |
| 5553 | 5553 | ||
| 5554 | /* Help bidi.c avoid expensive searches for display | ||
| 5555 | properties and overlays, by telling it that there are | ||
| 5556 | none up to `limit'. */ | ||
| 5557 | if (it->bidi_it.disp_pos < limit) | ||
| 5558 | { | ||
| 5559 | it->bidi_it.disp_pos = limit; | ||
| 5560 | it->bidi_it.disp_prop_p = 0; | ||
| 5561 | } | ||
| 5554 | do { | 5562 | do { |
| 5555 | bprev = it->bidi_it; | 5563 | bprev = it->bidi_it; |
| 5556 | bidi_move_to_visually_next (&it->bidi_it); | 5564 | bidi_move_to_visually_next (&it->bidi_it); |