Fix previous change for Bug#6988.

This commit is contained in:
Kenichi Handa 2012-02-02 18:07:29 +09:00
parent 159462d4d1
commit c5d3843c34
4 changed files with 13 additions and 12 deletions

View file

@ -1,3 +1,7 @@
2012-02-02 Kenichi Handa <handa@m17n.org>
* (compose-region): Cancel previous change.
2012-02-02 Kenichi Handa <handa@m17n.org>
* composite.el (compose-region, compose-string): Signal error for

View file

@ -211,7 +211,7 @@ or a vector or list of integers and rules.
If it is a character, it is an alternate character to display instead
of the text in the region.
If it is a string, the elements are one or more alternate characters. In
If it is a string, the elements are alternate characters. In
this case, TAB element has a special meaning. If the first
character is TAB, the glyphs are displayed with left padding space
so that no pixel overlaps with the previous column. If the last
@ -234,9 +234,7 @@ text in the composition."
(let ((modified-p (buffer-modified-p))
(inhibit-read-only t))
(if (or (vectorp components) (listp components))
(setq components (encode-composition-components components))
(if (= (length components) 0)
(error "Invalid composition component: %s" components)))
(setq components (encode-composition-components components)))
(compose-region-internal start end components modification-func)
(restore-buffer-modified-p modified-p)))
@ -269,9 +267,7 @@ Optional 5th argument MODIFICATION-FUNC is a function to call to
adjust the composition when it gets invalid because of a change of
text in the composition."
(if (or (vectorp components) (listp components))
(setq components (encode-composition-components components))
(if (= (length components) 0)
(error "Invalid composition component: %s" components)))
(setq components (encode-composition-components components)))
(or start (setq start 0))
(or end (setq end (length string)))
(compose-string-internal string start end components modification-func)

View file

@ -1,3 +1,8 @@
2012-02-02 Kenichi Handa <handa@m17n.org>
(x_produce_glyphs): Cancel previous change. If cmp->glyph_len is
0, do not call append_composite_glyph.
2012-02-02 Kenichi Handa <handa@m17n.org>
* xdisp.c (BUILD_COMPOSITE_GLYPH_STRING): Initialize first_s to

View file

@ -24595,10 +24595,6 @@ x_produce_glyphs (struct it *it)
it->glyph_row->contains_overlapping_glyphs_p = 1;
it->pixel_width = cmp->pixel_width;
if (it->pixel_width == 0)
/* We assure that all visible glyphs have at least 1-pixel
width. */
it->pixel_width = 1;
it->ascent = it->phys_ascent = cmp->ascent;
it->descent = it->phys_descent = cmp->descent;
if (face->box != FACE_NO_BOX)
@ -24630,7 +24626,7 @@ x_produce_glyphs (struct it *it)
if (it->descent < 0)
it->descent = 0;
if (it->glyph_row)
if (it->glyph_row && cmp->glyph_len > 0)
append_composite_glyph (it);
}
else if (it->what == IT_COMPOSITION)