Re: [dev] [st, dmenu] Crash when attempting to display characters with missing glyphs

From: Anselm R Garbe <garbeam_AT_gmail.com>
Date: Fri, 28 Jul 2017 08:35:50 +0200

Hi,

On 28 July 2017 at 07:44, B. Wilson <x_AT_wilsonb.com> wrote:
> I use mutt and happened to receive an email that caused st to crash. It turned out that the email contained a unicode emoji character for which I didn't have a suitable font.
>
> The character in question was U+1F917. I was able to reproduce the crash in st by cat-ing a file containing the single bad character. Pasting it from the X clipboard also reliably causes the crash.
>
> This is the error that is produced:
>
> X Error of failed request: BadLength (poly request too large or internal Xlib length error)
> Major opcode of failed request: 139 (RENDER)
> Minor opcode of failed request: 20 (RenderAddGlyphs)
> Serial number of failed request: 1442
> Current serial number in output stream: 1454
>
> I'm guessing that somewhere a 'missing glyph' error isn't getting checked, but I wasn't able to find the relevant code from a quick perusal.
>
> Anyway, the same issue seems to exist in dmenu. As a sanity check, I checked against the following:
>
> 1) different X terminal, i.e. xterm,
> 2) different character with missing glyph, i.e. U+1F642, and
> 3) installing a font with the appropriate glyphs, i.e. Symbola.
>
> As far as I can tell, the crash reliably occurs in st when attempting to display a character that has no associated glyph. As a workaround, I was able to install the Symbola font which
> apparently contains several unicode emoji.

1. Did you use st and/or dmenu from git?
2. Are you able to provide a stacktrace from the coredump?

Thanks,
Anselm
Received on Fri Jul 28 2017 - 08:35:50 CEST

This archive was generated by hypermail 2.3.0 : Fri Jul 28 2017 - 08:48:09 CEST