aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2010-01-15 14:09:50 +0900
committerKenichi Handa2010-01-15 14:09:50 +0900
commitcc320f07d4d1c0033c1728d22421462ab1fcc04e (patch)
treea5ca860fa1793a70d9a18192618df783218052d2 /src
parentd12bd91784f39bc65d9fdccc00676778f035c79d (diff)
downloademacs-cc320f07d4d1c0033c1728d22421462ab1fcc04e.tar.gz
emacs-cc320f07d4d1c0033c1728d22421462ab1fcc04e.zip
xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog4
-rw-r--r--src/xdisp.c11
2 files changed, 10 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e18591b345b..91db3a3dbae 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
12010-01-15 Kenichi Handa <handa@m17n.org>
2
3 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
4
12010-01-14 Kenichi Handa <handa@m17n.org> 52010-01-14 Kenichi Handa <handa@m17n.org>
2 6
3 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding 7 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
diff --git a/src/xdisp.c b/src/xdisp.c
index b20061b6b3b..ef9c7453d75 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -5638,11 +5638,11 @@ static int (* get_next_element[NUM_IT_METHODS]) P_ ((struct it *it)) =
5638/* Return 1 iff a character at CHARPOS (and BYTEPOS) is composed 5638/* Return 1 iff a character at CHARPOS (and BYTEPOS) is composed
5639 (possibly with the following characters). */ 5639 (possibly with the following characters). */
5640 5640
5641#define CHAR_COMPOSED_P(IT,CHARPOS,BYTEPOS) \ 5641#define CHAR_COMPOSED_P(IT,CHARPOS,BYTEPOS,END_CHARPOS) \
5642 ((IT)->cmp_it.id >= 0 \ 5642 ((IT)->cmp_it.id >= 0 \
5643 || ((IT)->cmp_it.stop_pos == (CHARPOS) \ 5643 || ((IT)->cmp_it.stop_pos == (CHARPOS) \
5644 && composition_reseat_it (&(IT)->cmp_it, CHARPOS, BYTEPOS, \ 5644 && composition_reseat_it (&(IT)->cmp_it, CHARPOS, BYTEPOS, \
5645 (IT)->end_charpos, (IT)->w, \ 5645 END_CHARPOS, (IT)->w, \
5646 FACE_FROM_ID ((IT)->f, (IT)->face_id), \ 5646 FACE_FROM_ID ((IT)->f, (IT)->face_id), \
5647 (IT)->string))) 5647 (IT)->string)))
5648 5648
@@ -6300,7 +6300,7 @@ next_element_from_string (it)
6300 return 0; 6300 return 0;
6301 } 6301 }
6302 else if (CHAR_COMPOSED_P (it, IT_STRING_CHARPOS (*it), 6302 else if (CHAR_COMPOSED_P (it, IT_STRING_CHARPOS (*it),
6303 IT_STRING_BYTEPOS (*it)) 6303 IT_STRING_BYTEPOS (*it), SCHARS (it->string))
6304 && next_element_from_composition (it)) 6304 && next_element_from_composition (it))
6305 { 6305 {
6306 return 1; 6306 return 1;
@@ -6336,7 +6336,7 @@ next_element_from_string (it)
6336 CHARPOS (position) = BYTEPOS (position) = -1; 6336 CHARPOS (position) = BYTEPOS (position) = -1;
6337 } 6337 }
6338 else if (CHAR_COMPOSED_P (it, IT_STRING_CHARPOS (*it), 6338 else if (CHAR_COMPOSED_P (it, IT_STRING_CHARPOS (*it),
6339 IT_STRING_BYTEPOS (*it)) 6339 IT_STRING_BYTEPOS (*it), it->string_nchars)
6340 && next_element_from_composition (it)) 6340 && next_element_from_composition (it))
6341 { 6341 {
6342 return 1; 6342 return 1;
@@ -6523,7 +6523,8 @@ next_element_from_buffer (it)
6523 && IT_CHARPOS (*it) >= it->redisplay_end_trigger_charpos) 6523 && IT_CHARPOS (*it) >= it->redisplay_end_trigger_charpos)
6524 run_redisplay_end_trigger_hook (it); 6524 run_redisplay_end_trigger_hook (it);
6525 6525
6526 if (CHAR_COMPOSED_P (it, IT_CHARPOS (*it), IT_BYTEPOS (*it)) 6526 if (CHAR_COMPOSED_P (it, IT_CHARPOS (*it), IT_BYTEPOS (*it),
6527 it->end_charpos)
6527 && next_element_from_composition (it)) 6528 && next_element_from_composition (it))
6528 { 6529 {
6529 return 1; 6530 return 1;