Subject: bug#20370: 24.3; "display: no font available" after resize

From: Jan Djärv <[email-masked]>
Date: Sun, 26 Apr 2015 12:00:15 +0200

Hi.

I can't repeat this on Ubuntu 12.04 LTS.
Do you perhaps have some bad libXft or libfreetype installed?

	Jan D.

Den 2015-04-24 23:28, Martin Pohlack skrev:
> I repeated the experiment with a freshly compiled emacs-24.5 from the
> upstream tarball on Ubuntu 12.04 with the same result.
>
> On 19.04.2015 14:15, Martin Pohlack wrote:
>> This bug report will be sent to the Bug-GNU-Emacs mailing list
>> and the GNU bug tracker at debbugs.gnu.org.  Please check that
>> the From: line contains a valid email address.  After a delay of up
>> to one day, you should receive an acknowledgment at that address.
>>
>> Please write in English if possible, as the Emacs maintainers
>> usually do not have translators for other languages.
>>
>> Please describe exactly what actions triggered the bug, and
>> the precise symptoms of the bug.  If you can, give a recipe
>> starting from `emacs -Q':
>>
>> ----------------------------------------------------------------------
>> After starting emacs with -Q:
>>
>> * I set a custom font as default face (eval-region):
>>
>>    (set-face-attribute 'default nil :family "Motix_Round")
>>
>>    Everything looks as expected.
>>
>>    (The font is available here https://github.com/martinp26/motix )
>>
>> * I resize the default font via C-x C-+:
>>
>>    No ASCII character is displayed correctly, all are represented by a
>>    small box.  Unicode characters (e.g., ö (o umlaut)) display correctly.
>>
>> * If I invoke describe-char on a character of each class I get this:
>>
>>> ----------------------------------------------------------------------
>>>               position: 221 of 224 (98%), column: 29
>>>              character: ö (displayed as ö) (codepoint 246, #o366, #xf6)
>>>      preferred charset: unicode (Unicode (ISO10646))
>>> code point in charset: 0xF6
>>>                 syntax: w 	which means: word
>>>               category: .:Base, L:Left-to-right (strong), j:Japanese, l:Latin
>>>               to input: type "C-x 8 RET HEX-CODEPOINT" or "C-x 8 RET NAME"
>>>            buffer code: #xC3 #xB6
>>>              file code: #xC3 #xB6 (encoded by coding system utf-8-unix)
>>>                display: by this font (glyph code)
>>>      xft:-unknown-Motix_Round-normal-normal-normal-*-31-*-*-*-m-0-iso10646-1 (#xB8)
>>>
>>> Character code properties: customize what to show
>>>    name: LATIN SMALL LETTER O WITH DIAERESIS
>>>    old-name: LATIN SMALL LETTER O DIAERESIS
>>>    general-category: Ll (Letter, Lowercase)
>>>    decomposition: (111 776) ('o' ' ')
>>>
>>> There are text properties here:
>>>    fontified            t
>> ----------------------------------------------------------------------
>>
>> ----------------------------------------------------------------------
>>>               position: 220 of 224 (98%), column: 28
>>>              character: e (displayed as e) (codepoint 101, #o145, #x65)
>>>      preferred charset: ascii (ASCII (ISO646 IRV))
>>> code point in charset: 0x65
>>>                 syntax: w 	which means: word
>>>               category: .:Base, L:Left-to-right (strong), a:ASCII, l:Latin, r:Roman
>>>               to input: type "C-x 8 RET HEX-CODEPOINT" or "C-x 8 RET NAME"
>>>            buffer code: #x65
>>>              file code: #x65 (encoded by coding system utf-8-unix)
>>>                display: no font available
>>>
>>> Character code properties: customize what to show
>>>    name: LATIN SMALL LETTER E
>>>    general-category: Ll (Letter, Lowercase)
>>>    decomposition: (101) ('e')
>>>
>>> There are text properties here:
>>>    fontified            t
>> ----------------------------------------------------------------------
>>
>>
>> * When I reset the size via C-x C-- or C-x C-0 back to normal:
>>
>>    Everything is find again, all characters display correctly.
>>
>>
>> Workaround:
>>
>> * If I re-evaluate the face definition after switching to a different
>>    font size:
>>
>>    (set-face-attribute 'default nil :family "Motix_Round")
>>
>>    everything is fine afterwards.  The font is used for all sizes from
>>    that point on and displays fine.  I assume there is some assumption
>>    about fonts built into emacs that is not fullfilled here but the
>>    font itself seems ultimately fine.
>>
>> ----------------------------------------------------------------------
>>
>> In GNU Emacs 24.3.1 (i686-pc-linux-gnu, GTK+ Version 3.10.7)
>>   of 2014-03-07 on toyol, modified by Debian
>> Windowing system distributor `The X.Org Foundation', version 11.0.11501000
>> System Description:	Ubuntu 14.04.2 LTS
>>
>> Configured using:
>>   `configure '--build' 'i686-linux-gnu' '--build' 'i686-linux-gnu'
>>   '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
>>   '--localstatedir=/var/lib' '--infodir=/usr/share/info'
>>   '--mandir=/usr/share/man' '--with-pop=yes'
>>   '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp'
>>   '--with-crt-dir=/usr/lib/i386-linux-gnu' '--with-x=yes'
>>   '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars'
>>   'build_alias=i686-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector
>>   --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall'
>>   'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro'
>>   'CPPFLAGS=-D_FORTIFY_SOURCE=2''
>>
>> Important settings:
>>    value of $LC_COLLATE: POSIX
>>    value of $LC_MESSAGES: en_US.UTF-8
>>    value of $LC_MONETARY: de_DE.UTF-8
>>    value of $LC_TIME: de_DE.UTF-8
>>    value of $LANG: en_US.UTF-8
>>    locale-coding-system: utf-8-unix
>>    default enable-multibyte-characters: t
>>
>> Major mode: Lisp Interaction
>>
>> Minor modes in effect:
>>    tooltip-mode: t
>>    mouse-wheel-mode: t
>>    tool-bar-mode: t
>>    menu-bar-mode: t
>>    file-name-shadow-mode: t
>>    global-font-lock-mode: t
>>    font-lock-mode: t
>>    blink-cursor-mode: t
>>    auto-composition-mode: t
>>    auto-encryption-mode: t
>>    auto-compression-mode: t
>>    line-number-mode: t
>>    transient-mark-mode: t
>>
>> Recent input:
>> <help-echo> <help-echo> <down-mouse-1> <mouse-1> C-y
>> <up> C-SPC <down> M-x e v a l - r e g <tab> <return>
>> C-x C-+ C-x C-- C-x C-+ M-x <up> <return> C-x C-- C-x
>> C-- C-x C-- C-x C-+ C-x C-+ M-x b u g <tab> <tab> <C-backspace>
>> <C-backspace> - b u g <tab> <C-backspace> <backspace>
>> r e p o <tab> r <tab> <return>
>>
>> Recent messages:
>> For information about GNU Emacs and the GNU system, type C-h C-a.
>> Mark set
>> Mark activated
>> Use +,-,0 for further adjustment [8 times]
>> Making completion list... [3 times]
>>
>> Load-path shadows:
>> None found.
>>
>> Features:
>> (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
>> mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
>> gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
>> mail-prsvr mail-utils help-mode easymenu face-remap time-date tooltip
>> ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd
>> fontset image regexp-opt fringe tabulated-list newcomment lisp-mode
>> register page menu-bar rfn-eshadow timer select scroll-bar mouse
>> jit-lock font-lock syntax facemenu font-core frame cham georgian
>> utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
>> japanese hebrew greek romanian slovak czech european ethiopic indian
>> cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
>> minibuffer loaddefs button faces cus-face macroexp files text-properties
>> overlay sha1 md5 base64 format env code-pages mule custom widget
>> hashtable-print-readable backquote make-network-process dbusbind
>> dynamic-setting system-font-setting font-render-setting move-toolbar gtk
>> x-toolkit x multi-tty emacs)
>>
>
>
>