diff options
| author | YAMAMOTO Mitsuharu | 2007-08-27 08:33:57 +0000 |
|---|---|---|
| committer | YAMAMOTO Mitsuharu | 2007-08-27 08:33:57 +0000 |
| commit | 769174c4d4efe3e849480e4410c679605bb51eb2 (patch) | |
| tree | 04af464e358dd4edeb5d04ba548fe3904c254e96 | |
| parent | a225da012cf8f41c6978dc2fd884be23792adb76 (diff) | |
| download | emacs-769174c4d4efe3e849480e4410c679605bb51eb2.tar.gz emacs-769174c4d4efe3e849480e4410c679605bb51eb2.zip | |
(x_draw_composite_glyph_string_foreground): Draw rectangle
for nonexistent or zero-width glyph in composition glyph.
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/macterm.c | 15 |
2 files changed, 16 insertions, 4 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 73a906bcc56..5ad9ac7d84e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | ||
| 2 | |||
| 3 | * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle | ||
| 4 | for nonexistent or zero-width glyph in composition glyph. | ||
| 5 | |||
| 1 | 2007-08-27 Richard Stallman <rms@gnu.org> | 6 | 2007-08-27 Richard Stallman <rms@gnu.org> |
| 2 | 7 | ||
| 3 | * eval.c (condition-case): Doc fix. | 8 | * eval.c (condition-case): Doc fix. |
diff --git a/src/macterm.c b/src/macterm.c index b282bac3aa6..01ac7328d6f 100644 --- a/src/macterm.c +++ b/src/macterm.c | |||
| @@ -2973,10 +2973,17 @@ x_draw_composite_glyph_string_foreground (s) | |||
| 2973 | else | 2973 | else |
| 2974 | { | 2974 | { |
| 2975 | for (i = 0; i < s->nchars; i++, ++s->gidx) | 2975 | for (i = 0; i < s->nchars; i++, ++s->gidx) |
| 2976 | mac_draw_image_string_16 (s->f, s->gc, | 2976 | if (mac_per_char_metric (GC_FONT (s->gc), s->char2b + i, 0) == NULL) |
| 2977 | x + s->cmp->offsets[s->gidx * 2], | 2977 | /* This is a nonexistent or zero-width glyph such as a |
| 2978 | s->ybase - s->cmp->offsets[s->gidx * 2 + 1], | 2978 | combining diacritic. Draw a rectangle. */ |
| 2979 | s->char2b + i, 1, 0, s->face->overstrike); | 2979 | mac_draw_rectangle (s->f, s->gc, |
| 2980 | x + s->cmp->offsets[s->gidx * 2], s->y, | ||
| 2981 | FONT_WIDTH (GC_FONT (s->gc)) - 1, s->height - 1); | ||
| 2982 | else | ||
| 2983 | mac_draw_image_string_16 (s->f, s->gc, | ||
| 2984 | x + s->cmp->offsets[s->gidx * 2], | ||
| 2985 | s->ybase - s->cmp->offsets[s->gidx * 2 + 1], | ||
| 2986 | s->char2b + i, 1, 0, s->face->overstrike); | ||
| 2980 | } | 2987 | } |
| 2981 | } | 2988 | } |
| 2982 | 2989 | ||