diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/xdisp.c | 21 |
2 files changed, 17 insertions, 9 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3048e901494..448b9f2835e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2010-03-30 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to): | ||
| 4 | Restore original behavior when the iterator is not bidi_p. | ||
| 5 | |||
| 1 | 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu> | 6 | 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 7 | ||
| 3 | * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern. | 8 | * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern. |
diff --git a/src/xdisp.c b/src/xdisp.c index 17a018b7493..c8b4c2b9aa5 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -6999,7 +6999,8 @@ move_it_in_display_line_to (struct it *it, | |||
| 6999 | #define BUFFER_POS_REACHED_P() \ | 6999 | #define BUFFER_POS_REACHED_P() \ |
| 7000 | ((op & MOVE_TO_POS) != 0 \ | 7000 | ((op & MOVE_TO_POS) != 0 \ |
| 7001 | && BUFFERP (it->object) \ | 7001 | && BUFFERP (it->object) \ |
| 7002 | && IT_CHARPOS (*it) == to_charpos \ | 7002 | && (IT_CHARPOS (*it) == to_charpos \ |
| 7003 | || (!it->bidi_p && IT_CHARPOS (*it) > to_charpos)) \ | ||
| 7003 | && (it->method == GET_FROM_BUFFER \ | 7004 | && (it->method == GET_FROM_BUFFER \ |
| 7004 | || (it->method == GET_FROM_DISPLAY_VECTOR \ | 7005 | || (it->method == GET_FROM_DISPLAY_VECTOR \ |
| 7005 | && it->dpvec + it->current.dpvec_index + 1 >= it->dpend))) | 7006 | && it->dpvec + it->current.dpvec_index + 1 >= it->dpend))) |
| @@ -7023,14 +7024,16 @@ move_it_in_display_line_to (struct it *it, | |||
| 7023 | if ((op & MOVE_TO_POS) != 0 | 7024 | if ((op & MOVE_TO_POS) != 0 |
| 7024 | && BUFFERP (it->object) | 7025 | && BUFFERP (it->object) |
| 7025 | && it->method == GET_FROM_BUFFER | 7026 | && it->method == GET_FROM_BUFFER |
| 7026 | && (prev_method == GET_FROM_IMAGE | 7027 | && ((!it->bidi_p && IT_CHARPOS (*it) > to_charpos) |
| 7027 | || prev_method == GET_FROM_STRETCH) | 7028 | || (it->bidi_p |
| 7028 | /* Passed TO_CHARPOS from left to right. */ | 7029 | && (prev_method == GET_FROM_IMAGE |
| 7029 | && ((prev_pos < to_charpos | 7030 | || prev_method == GET_FROM_STRETCH) |
| 7030 | && IT_CHARPOS (*it) > to_charpos) | 7031 | /* Passed TO_CHARPOS from left to right. */ |
| 7031 | /* Passed TO_CHARPOS from right to left. */ | 7032 | && ((prev_pos < to_charpos |
| 7032 | || (prev_pos > to_charpos) | 7033 | && IT_CHARPOS (*it) > to_charpos) |
| 7033 | && IT_CHARPOS (*it) < to_charpos)) | 7034 | /* Passed TO_CHARPOS from right to left. */ |
| 7035 | || (prev_pos > to_charpos | ||
| 7036 | && IT_CHARPOS (*it) < to_charpos))))) | ||
| 7034 | { | 7037 | { |
| 7035 | if (it->line_wrap != WORD_WRAP || wrap_it.sp < 0) | 7038 | if (it->line_wrap != WORD_WRAP || wrap_it.sp < 0) |
| 7036 | { | 7039 | { |