diff options
Diffstat (limited to 'src/xdisp.c')
| -rw-r--r-- | src/xdisp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index a7913768d8a..1deda682192 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -23050,7 +23050,8 @@ right_overwritten (struct glyph_string *s) | |||
| 23050 | { | 23050 | { |
| 23051 | int x = 0, i; | 23051 | int x = 0, i; |
| 23052 | struct glyph *glyphs = s->row->glyphs[s->area]; | 23052 | struct glyph *glyphs = s->row->glyphs[s->area]; |
| 23053 | int first = (s->first_glyph - glyphs) + (s->cmp ? 1 : s->nchars); | 23053 | int first = (s->first_glyph - glyphs |
| 23054 | + (s->first_glyph->type == COMPOSITE_GLYPH ? 1 : s->nchars)); | ||
| 23054 | int end = s->row->used[s->area]; | 23055 | int end = s->row->used[s->area]; |
| 23055 | 23056 | ||
| 23056 | for (i = first; i < end && s->right_overhang > x; ++i) | 23057 | for (i = first; i < end && s->right_overhang > x; ++i) |
| @@ -23073,7 +23074,8 @@ right_overwriting (struct glyph_string *s) | |||
| 23073 | int i, k, x; | 23074 | int i, k, x; |
| 23074 | int end = s->row->used[s->area]; | 23075 | int end = s->row->used[s->area]; |
| 23075 | struct glyph *glyphs = s->row->glyphs[s->area]; | 23076 | struct glyph *glyphs = s->row->glyphs[s->area]; |
| 23076 | int first = (s->first_glyph - glyphs) + (s->cmp ? 1 : s->nchars); | 23077 | int first = (s->first_glyph - glyphs |
| 23078 | + (s->first_glyph->type == COMPOSITE_GLYPH ? 1 : s->nchars)); | ||
| 23077 | 23079 | ||
| 23078 | k = -1; | 23080 | k = -1; |
| 23079 | x = 0; | 23081 | x = 0; |