Subject: bug#44506: 28.0.50; Segfault on opening a particular message in Gnus in terminal/tty

From: Amin Bandali <[email-masked]>
Date: Sat, 14 Nov 2020 12:19:21 -0500

Eli Zaretskii writes:

[...]
>
> FTR, it is very easy to reproduce the problem, no need for Gnus or
> EBDB.  Here's the recipe:
>
>   emacs -Q -nw
>   C-x 3
>   C-x b foo
>
> Now type some R2L character.  For example, turn on the Arabic input
> method and press 'a'.  You will see that the character does not appear
> on display.  Basically, on a TTY frame, the first character of a R2L
> line in a window that is not the rightmost one is not shown: it is
> overwritten by the vertical-border character '|' we display between
> the two adjacent windows.  This doesn't crash as long as the
> overwritten glyph is of a character, but in the case in point that
> glyph came from a composition, and then all hell breaks loose...
>
> This is a regression introduced in Emacs 27.1, by the code that
> supports display-fill-column-indicator-mode.  I have now fixed it on
> the emacs-27 branch.

That is one subtle bug!!

> Many thanks to Amin for giving me access to a system where this could
> be easily reproduced.

You're most welcome, and many thanks to you Eli for looking into this,
debugging, and fixing it.  Also many thanks to Eric for looking into the
EBDB side of things and reproducing the issue.  Thank you both very much
for your help with this.

Best
amin