diff options
author | Miles Bader <miles@gnu.org> | 2007-06-16 22:32:13 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2007-06-16 22:32:13 +0000 |
commit | b36153926049c95ef192786f4ef6151dc6506de4 (patch) | |
tree | 51890fa5961aa1dc989178cbbfabb03d2e443687 /src/composite.c | |
parent | 650e2d284dcf9786a78abc3fef12599cf60d95da (diff) | |
parent | 1562d1e9a73e608dbfe76bbedbeb2350d39e224f (diff) | |
download | emacs-b36153926049c95ef192786f4ef6151dc6506de4.tar.gz |
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 793-802)
- Update from CVS
- Remove RCS keywords
- Merge from emacs--rel--22
* emacs--rel--22 (patch 42-50)
- Update from CVS
- Merge from gnus--rel--5.10
- Gnus ChangeLog tweaks
* gnus--rel--5.10 (patch 229-232)
- Merge from emacs--devo--0, emacs--rel--22
- ChangeLog tweak
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-223
Diffstat (limited to 'src/composite.c')
-rw-r--r-- | src/composite.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/composite.c b/src/composite.c index d44acf24722..332f4df81de 100644 --- a/src/composite.c +++ b/src/composite.c @@ -537,7 +537,8 @@ update_compositions (from, to, check_mask) avoid it, in such a case, we change the property of the latter to the copy of it. */ if (from > BEGV - && find_composition (from - 1, -1, &start, &end, &prop, Qnil)) + && find_composition (from - 1, -1, &start, &end, &prop, Qnil) + && COMPOSITION_VALID_P (start, end, prop)) { min_pos = start; if (end > to) @@ -550,7 +551,8 @@ update_compositions (from, to, check_mask) from = end; } else if (from < ZV - && find_composition (from, -1, &start, &from, &prop, Qnil)) + && find_composition (from, -1, &start, &from, &prop, Qnil) + && COMPOSITION_VALID_P (start, from, prop)) { if (from > to) max_pos = from; @@ -565,6 +567,7 @@ update_compositions (from, to, check_mask) (to - 1). */ while (from < to - 1 && find_composition (from, to, &start, &from, &prop, Qnil) + && COMPOSITION_VALID_P (start, from, prop) && from < to - 1) run_composition_function (start, from, prop); } @@ -572,7 +575,8 @@ update_compositions (from, to, check_mask) if (check_mask & CHECK_TAIL) { if (from < to - && find_composition (to - 1, -1, &start, &end, &prop, Qnil)) + && find_composition (to - 1, -1, &start, &end, &prop, Qnil) + && COMPOSITION_VALID_P (start, end, prop)) { /* TO should be also at composition boundary. But, insertion or deletion will make two compositions adjacent @@ -589,7 +593,8 @@ update_compositions (from, to, check_mask) run_composition_function (start, end, prop); } else if (to < ZV - && find_composition (to, -1, &start, &end, &prop, Qnil)) + && find_composition (to, -1, &start, &end, &prop, Qnil) + && COMPOSITION_VALID_P (start, end, prop)) { run_composition_function (start, end, prop); max_pos = end; |