aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2006-10-16 07:53:16 +0000
committerKenichi Handa2006-10-16 07:53:16 +0000
commit4bad3dc5dff0cfa199127f9bbbd4c62c3b572f38 (patch)
treecd8b152edf082335426b46d117cace52f428ab78 /src
parent4b848612ffac4a6bfd4118d5f4f28c30859c7d56 (diff)
downloademacs-4bad3dc5dff0cfa199127f9bbbd4c62c3b572f38.tar.gz
emacs-4bad3dc5dff0cfa199127f9bbbd4c62c3b572f38.zip
(x_draw_composite_glyph_string_foreground): Don't draw
TAB. Adjusted for the change of s->char2b which always points to the first elememnt of allocated memory.
Diffstat (limited to 'src')
-rw-r--r--src/xterm.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 856fbef435b..ccc41810289 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -1498,14 +1498,15 @@ x_draw_composite_glyph_string_foreground (s)
1498 else 1498 else
1499 { 1499 {
1500 for (i = 0; i < s->nchars; i++, ++s->gidx) 1500 for (i = 0; i < s->nchars; i++, ++s->gidx)
1501 { 1501 if (COMPOSITION_GLYPH (s->cmp, s->gidx) != '\t')
1502 int xx = x + s->cmp->offsets[s->gidx * 2]; 1502 {
1503 int yy = y - s->cmp->offsets[s->gidx * 2 + 1]; 1503 int xx = x + s->cmp->offsets[s->gidx * 2];
1504 int yy = y - s->cmp->offsets[s->gidx * 2 + 1];
1504 1505
1505 font->driver->draw (s, i, i + 1, xx, yy, 0); 1506 font->driver->draw (s, s->gidx, s->gidx + 1, xx, yy, 0);
1506 if (s->face->overstrike) 1507 if (s->face->overstrike)
1507 font->driver->draw (s, i, i + 1, xx + 1, yy, 0); 1508 font->driver->draw (s, s->gidx, s->gidx + 1, xx + 1, yy, 0);
1508 } 1509 }
1509 } 1510 }
1510 } 1511 }
1511#endif /* USE_FONT_BACKEND */ 1512#endif /* USE_FONT_BACKEND */
@@ -1517,12 +1518,12 @@ x_draw_composite_glyph_string_foreground (s)
1517 XDrawString16 (s->display, s->window, s->gc, 1518 XDrawString16 (s->display, s->window, s->gc,
1518 x + s->cmp->offsets[s->gidx * 2], 1519 x + s->cmp->offsets[s->gidx * 2],
1519 s->ybase - s->cmp->offsets[s->gidx * 2 + 1], 1520 s->ybase - s->cmp->offsets[s->gidx * 2 + 1],
1520 s->char2b + i, 1); 1521 s->char2b + s->gidx, 1);
1521 if (s->face->overstrike) 1522 if (s->face->overstrike)
1522 XDrawString16 (s->display, s->window, s->gc, 1523 XDrawString16 (s->display, s->window, s->gc,
1523 x + s->cmp->offsets[s->gidx * 2] + 1, 1524 x + s->cmp->offsets[s->gidx * 2] + 1,
1524 s->ybase - s->cmp->offsets[s->gidx * 2 + 1], 1525 s->ybase - s->cmp->offsets[s->gidx * 2 + 1],
1525 s->char2b + i, 1); 1526 s->char2b + s->gidx, 1);
1526 } 1527 }
1527 } 1528 }
1528} 1529}