GNU bug report logs - #33885
27.0.50; PUA character makes emacs crash

Previous Next

Package: emacs;

Reported by: Werner LEMBERG <wl <at> gnu.org>

Date: Thu, 27 Dec 2018 08:56:01 UTC

Severity: normal

Tags: moreinfo

Found in version 27.0.50

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Werner LEMBERG <wl <at> gnu.org>
Cc: 33885 <at> debbugs.gnu.org
Subject: bug#33885: 27.0.50; PUA character makes emacs crash
Date: Fri, 28 Dec 2018 17:33:07 +0200
> Date: Fri, 28 Dec 2018 15:58:50 +0100 (CET)
> Cc: 33885 <at> debbugs.gnu.org
> From: Werner LEMBERG <wl <at> gnu.org>
> 
> OK.  `XftFontOpenPattern' returns the following data for `Cardo':
> 
> (gdb) p *xftfont
> $12 = {
>   ascent = 16, 
>   descent = -5, 
>   height = 6, 
>   max_advance_width = 91, 
>   charset = 0x7fffe23d52d8, 
>   pattern = 0x1f01050
> }
> 
> This is problematic, since it only reflects the Apple values for
> ascent and descent (i.e., the data in the font's `hhea' table).  To
> solve the issue, there are two possible solutions IMHO.
> 
> (1) Simply accept whatever `XftFontOpenPattern' returns, including
>     negative values for `descent' – actually, such font might exist:
>     for example, consider a special font that only contains dashes of
>     different length.

I don't think this is a good idea.

> (2) Improve the heuristics to get sensible global ascent and descent
>     values of a font.  In particular, use the FreeType library to
>     access a TrueType's or OpenType's `OS/2' table and compare its
>     vertical metrics values with the `hhea' data to eliminate bugs in
>     the font – sign problems with `descent' do happen especially in
>     older fonts that were either designed for Apple or for Windows,
>     and the fields for the `other' OS were filled out arbitrarily,
>     more or less.

I'd appreciate more details on how this could be done.  I'm no expert
on fonts nor on FreeType, and last I checked we have no one else.

Thanks.




This bug report was last modified 3 years and 73 days ago.

Previous Next


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