GNU bug report logs - #26742
Display bug with composed strings

Previous Next

Package: emacs;

Reported by: Clément Pit--Claudel <clement.pitclaudel <at> live.com>

Date: Tue, 2 May 2017 06:59:01 UTC

Severity: normal

Done: mituharu <at> math.s.chiba-u.ac.jp

Bug is archived. No further changes may be made.

Full log


Message #65 received at 26742 <at> debbugs.gnu.org (full text, mbox):

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: Andreas Schwab <schwab <at> linux-m68k.org>
Cc: Clément Pit--Claudel <clement.pitclaudel <at> live.com>,
 26742 <at> debbugs.gnu.org
Subject: Re: bug#26742: Display bug with composed strings
Date: Thu, 04 May 2017 15:30:27 +0900
>>>>> On Thu, 04 May 2017 14:39:16 +0900, YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp> said:

>> That fixes the disappearing box cursor, but doesn't fix the ghost
>> character.

> Then could you try the patch below, together with the previous one?

Sorry.  Please use this one instead of the last one.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp

diff --git a/src/xdisp.c b/src/xdisp.c
index e3315c4..ed88f4c 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -24711,7 +24725,8 @@ compute_overhangs_and_x (struct glyph_string *s, int x, int backward_p)
 	{
 	  if (FRAME_RIF (s->f)->compute_glyph_string_overhangs)
 	    FRAME_RIF (s->f)->compute_glyph_string_overhangs (s);
-	  x -= s->width;
+	  if (!s->cmp || s->cmp_to == s->cmp->glyph_len)
+	    x -= s->width;
 	  s->x = x;
 	  s = s->prev;
 	}
@@ -24723,7 +24738,8 @@ compute_overhangs_and_x (struct glyph_string *s, int x, int backward_p)
 	  if (FRAME_RIF (s->f)->compute_glyph_string_overhangs)
 	    FRAME_RIF (s->f)->compute_glyph_string_overhangs (s);
 	  s->x = x;
-	  x += s->width;
+	  if (!s->cmp || s->cmp_to == s->cmp->glyph_len)
+	    x += s->width;
 	  s = s->next;
 	}
     }




This bug report was last modified 8 years and 18 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.