emacs-devel
[Top][All Lists]
Advanced

[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);

reply via email to

[Prev in Thread] Current Thread [Next in Thread]