diff options
| author | YAMAMOTO Mitsuharu | 2007-08-27 08:31:30 +0000 |
|---|---|---|
| committer | YAMAMOTO Mitsuharu | 2007-08-27 08:31:30 +0000 |
| commit | 83cc8d356afe3bfd68da74b822549e02047ed041 (patch) | |
| tree | e0827a0d4a54d8a2a77ce4570c669393d60776d8 /src | |
| parent | 8a2e0b2a692dfee47dcec6f77b39210ae511db35 (diff) | |
| download | emacs-83cc8d356afe3bfd68da74b822549e02047ed041.tar.gz emacs-83cc8d356afe3bfd68da74b822549e02047ed041.zip | |
(x_draw_composite_glyph_string_foreground): Draw rectangle
for nonexistent or zero-width glyph in composition glyph.
Diffstat (limited to 'src')
| -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 9e6641ebf2a..b402b1c7646 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-25 Stefan Monnier <monnier@iro.umontreal.ca> | 6 | 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 7 | ||
| 3 | * m/amdx86-64.h: Redirect to intel386.h if compiling for i386. | 8 | * m/amdx86-64.h: Redirect to intel386.h if compiling for i386. |
diff --git a/src/macterm.c b/src/macterm.c index 9655b09c819..0f2b053853d 100644 --- a/src/macterm.c +++ b/src/macterm.c | |||
| @@ -3056,10 +3056,17 @@ x_draw_composite_glyph_string_foreground (s) | |||
| 3056 | else | 3056 | else |
| 3057 | { | 3057 | { |
| 3058 | for (i = 0; i < s->nchars; i++, ++s->gidx) | 3058 | for (i = 0; i < s->nchars; i++, ++s->gidx) |
| 3059 | mac_draw_image_string_16 (s->f, s->gc, | 3059 | if (mac_per_char_metric (GC_FONT (s->gc), s->char2b + i, 0) == NULL) |
| 3060 | x + s->cmp->offsets[s->gidx * 2], | 3060 | /* This is a nonexistent or zero-width glyph such as a |
| 3061 | s->ybase - s->cmp->offsets[s->gidx * 2 + 1], | 3061 | combining diacritic. Draw a rectangle. */ |
| 3062 | s->char2b + i, 1, 0, s->face->overstrike); | 3062 | mac_draw_rectangle (s->f, s->gc, |
| 3063 | x + s->cmp->offsets[s->gidx * 2], s->y, | ||
| 3064 | FONT_WIDTH (GC_FONT (s->gc)) - 1, s->height - 1); | ||
| 3065 | else | ||
| 3066 | mac_draw_image_string_16 (s->f, s->gc, | ||
| 3067 | x + s->cmp->offsets[s->gidx * 2], | ||
| 3068 | s->ybase - s->cmp->offsets[s->gidx * 2 + 1], | ||
| 3069 | s->char2b + i, 1, 0, s->face->overstrike); | ||
| 3063 | } | 3070 | } |
| 3064 | } | 3071 | } |
| 3065 | 3072 | ||