From: Danh Doan Date: Sun, 19 Apr 2020 14:30:08 GMT Subject: Re: gitk crashes if the diff contains certain unicode characters Message-ID: <20200419143008.GD28207@danh.dev> In-Reply-To: On 2020-04-19 14:15:06+0200, Glax wrote: > Looks like certain characters cause gitk to crash when it tries to > render a diff. > > > How to repro: > > git init > echo foo >foo > git add foo > git commit -m foo > # The following assumes bash builtin echo > echo -e '\u2754' >foo > gitk > > Now `foo` should contain the character U+2754 encoded as utf-8. > > If on gitk you click on "Local uncommitted changes", it'll crash with > the following message: > > 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: 4220 > Current serial number in output stream: 4247 U+2754 is *WHITE* QUESTION MARK ORNAMENT The error message is very familiar to me. I /think/ it's a bug in libXft, it can't handle colored emoji, yet. There're similar issue reported to Google Noto Emoji font: https://github.com/googlefonts/noto-emoji/issues/183 -- Danh