[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: combining chars issue
From: |
Emanuele Giaquinta |
Subject: |
Re: combining chars issue |
Date: |
Mon, 23 Jun 2008 12:14:03 +0200 |
On Thu, Jun 19, 2008 at 04:30:57PM +0200, Emanuele Giaquinta wrote:
> with latest cvs combining chars are not handled properly in emacs -Q -nw.
> It seems emacs does not write the combining chars at all on stdout, so
> they are not displayed.
The problem seems to be in term.c:append_glyph, which does not append
any glyph when it->pixel_width == 0.
Does the attached patch make sense?
diff --git a/src/term.c b/src/term.c
index 533104d..281834e 100644
--- a/src/term.c
+++ b/src/term.c
@@ -1512,7 +1512,7 @@ append_glyph (it)
end = it->glyph_row->glyphs[1 + it->area];
for (i = 0;
- i < it->pixel_width && glyph < end;
+ i < it->nglyphs && glyph < end;
++i)
{
glyph->type = CHAR_GLYPH;
@@ -1638,7 +1638,7 @@ produce_glyphs (it)
else
{
it->pixel_width = CHAR_WIDTH (it->c);
- it->nglyphs = it->pixel_width;
+ it->nglyphs = it->pixel_width ? it->pixel_width : 1;
if (it->glyph_row)
append_glyph (it);