diff options
| author | Kenichi Handa | 2010-08-26 09:47:34 +0900 |
|---|---|---|
| committer | Kenichi Handa | 2010-08-26 09:47:34 +0900 |
| commit | fe50eb41eac9d38909937f7da3bf394b96fb44af (patch) | |
| tree | 6bf37e61bf5c20737c954024ff8ec9aaf3936e2e /src | |
| parent | 41a5c5c417bf605499fdfa16d96cd93fa4fca6a5 (diff) | |
| download | emacs-fe50eb41eac9d38909937f7da3bf394b96fb44af.tar.gz emacs-fe50eb41eac9d38909937f7da3bf394b96fb44af.zip | |
xdisp.c (compute_stop_pos): Pay attention to bidi scan direction on calling composition_compute_stop_pos.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/xdisp.c | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 39f168dc8a4..8a3714bcf0d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2010-08-26 Kenichi Handa <handa@m17n.org> | ||
| 2 | |||
| 3 | * xdisp.c (compute_stop_pos): Pay attention to bidi scan direction | ||
| 4 | on calling composition_compute_stop_pos. | ||
| 5 | |||
| 1 | 2010-08-25 Kenichi Handa <handa@m17n.org> | 6 | 2010-08-25 Kenichi Handa <handa@m17n.org> |
| 2 | 7 | ||
| 3 | * fontset.c (reorder_font_vector): Prefer a font-spec specifying | 8 | * fontset.c (reorder_font_vector): Prefer a font-spec specifying |
diff --git a/src/xdisp.c b/src/xdisp.c index 93fdb68eeac..07078a199a3 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -3177,7 +3177,7 @@ compute_stop_pos (struct it *it) | |||
| 3177 | { | 3177 | { |
| 3178 | register INTERVAL iv, next_iv; | 3178 | register INTERVAL iv, next_iv; |
| 3179 | Lisp_Object object, limit, position; | 3179 | Lisp_Object object, limit, position; |
| 3180 | EMACS_INT charpos, bytepos; | 3180 | EMACS_INT charpos, bytepos, stoppos; |
| 3181 | 3181 | ||
| 3182 | /* If nowhere else, stop at the end. */ | 3182 | /* If nowhere else, stop at the end. */ |
| 3183 | it->stop_charpos = it->end_charpos; | 3183 | it->stop_charpos = it->end_charpos; |
| @@ -3267,8 +3267,12 @@ compute_stop_pos (struct it *it) | |||
| 3267 | } | 3267 | } |
| 3268 | } | 3268 | } |
| 3269 | 3269 | ||
| 3270 | if (it->bidi_p && it->bidi_it.scan_dir < 0) | ||
| 3271 | stoppos = -1; | ||
| 3272 | else | ||
| 3273 | stoppos = it->stop_charpos; | ||
| 3270 | composition_compute_stop_pos (&it->cmp_it, charpos, bytepos, | 3274 | composition_compute_stop_pos (&it->cmp_it, charpos, bytepos, |
| 3271 | it->stop_charpos, it->string); | 3275 | stoppos, it->string); |
| 3272 | 3276 | ||
| 3273 | xassert (STRINGP (it->string) | 3277 | xassert (STRINGP (it->string) |
| 3274 | || (it->stop_charpos >= BEGV | 3278 | || (it->stop_charpos >= BEGV |