Subject: bug#12364: 24.2.50; wrong overhang display for gstring compositions

From: Eli Zaretskii <[email-masked]>
Date: Thu, 06 Sep 2012 11:18:23 +0300

> Date: Thu, 06 Sep 2012 11:37:26 +0900
> From: YAMAMOTO Mitsuharu <[email-masked]>
> 
> Steps to Reproduce:
> 
> 1. $ emacs -Q &
> 2. evaluate (set-fontset-font t 'arabic (font-spec :family "arial" :size 30))
> 3. C-u C-\ arabic RET
> 4. u S u
>    At this moment, the two grapheme clusters look connected.
> 5. C-b C-p
>    Now the two grapheme clusters look unconnected.

Not reproducible on Windows XP.

Are you using the latest libm17n-flt and libotf libraries, and the
latest fonts?

> I think at least the two occurrences of the following line in xdisp.c
> are wrong.
> 
>       int first = (s->first_glyph - glyphs) + (s->cmp ? 1 : s->nchars);
> 
> The value of s->cmp seems to be NULL for the "gstring" cases.

These two lines are not executed here, when the above recipe is used.
Maybe that's why I don't see the problem.