GNU bug report logs - #41454
28.0.50; [".+" 0 font-shape-gstring] composition rule breaks paren highlighting

Previous Next

Package: emacs;

Reported by: Pip Cet <pipcet <at> gmail.com>

Date: Fri, 22 May 2020 12:51:02 UTC

Severity: normal

Found in version 28.0.50

Done: Pip Cet <pipcet <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Pip Cet <pipcet <at> gmail.com>
Cc: 41454 <at> debbugs.gnu.org
Subject: Re: bug#41454: 28.0.50; [".+" 0 font-shape-gstring] composition rule
 breaks paren highlighting
Date: Mon, 01 Jun 2020 19:17:30 +0300
> From: Pip Cet <pipcet <at> gmail.com>
> Date: Sun, 31 May 2020 19:58:09 +0000
> Cc: 41454 <at> debbugs.gnu.org
> 
> > On second thought, I'm not sure this is the right place to look at.
> > It could be fill_gstring_glyph_string and BUILD_GSTRING_GLYPH_STRING
> > instead (and the respective *term.c display functions).
> 
> Thanks for the hint! You were absolutely correct.
> 
> diff --git a/src/xdisp.c b/src/xdisp.c
> index db0ec68315..989958fa11 100644
> --- a/src/xdisp.c
> +++ b/src/xdisp.c
> @@ -27698,6 +27698,7 @@ fill_gstring_glyph_string (struct glyph_string *s, int face_id,
>    while (glyph < last
>  	 && glyph->u.cmp.automatic
>  	 && glyph->u.cmp.id == s->cmp_id
> +	 && glyph->face_id == face_id
>  	 && s->cmp_to == glyph->slice.cmp.from)
>      {
>        s->width += glyph->pixel_width;

LGTM, thanks.

(Note that the sibling function fill_composite_glyph_string already
does that for static compositions.)




This bug report was last modified 4 years and 355 days ago.

Previous Next


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