Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.emacs.bug > #134813

bug#43177: Bug: Emacs 27.1 hangs forever in `FcCharSetSubtractCount' from '/usr/lib/libfontconfig.so.1'

From Alexander Shukaev <emacs@Alexander.Shukaev.name>
Newsgroups gnu.emacs.bug
Subject bug#43177: Bug: Emacs 27.1 hangs forever in `FcCharSetSubtractCount' from '/usr/lib/libfontconfig.so.1'
Date 2020-09-03 11:40 +0200
Message-ID <mailman.2170.1599126065.2469.bug-gnu-emacs@gnu.org> (permalink)
References (1 earlier) <m2y2lr2uaw.fsf@gmail.com> <caae0787-d1bb-b4bf-93ff-c9e7f7147964@Alexander.Shukaev.name> <f0398105-c575-bcd7-0daa-54c6e1b2dbe9@Alexander.Shukaev.name> <m2mu272ppt.fsf@gmail.com> <3598262d-b65c-b1b4-310a-29149fd89ebf@Alexander.Shukaev.name>

Show all headers | View raw


On 03/09/2020 11:07, Robert Pluim wrote:
>>>>>> On Thu, 3 Sep 2020 11:02:16 +0200, Alexander Shukaev <emacs@Alexander.Shukaev.name> said:
> 
>      Alexander> /usr/share/fonts/TTF/AdobeBlank-Regular.ttf is owned by
>      Alexander> ttf-google-fonts-git 20171026-1
> 
> Looks like Pip's crystal ball was right, thatʼs the same font
> impicated in Bug#40733
> 
>      Alexander> I will try updating it now and see if it fixes the issue.  However,
>      Alexander> even if it does, I have a bunch of follow-up questions:
> 
>      Alexander> 1.  How to protect Emacs from having that issue again regardless of
>      Alexander> broken/out-dated fonts?  Can I somehow, for example, exclude such
>      Alexander> fonts from consideration by Emacs?
> 
>      face-ignored-fonts is a variable defined in `C source code'.
>      Its value is nil
> 
>        Probably introduced at or before Emacs version 21.1.
> 
>      Documentation:
>      List of ignored fonts.
>      Each element is a regular expression that matches names of fonts to
>      ignore.
> 
>      Alexander> 2.  Why was this font queried at all in the first place?  I don't use
>      Alexander> this font.
> 
> You donʼt use it, but fontconfig know about it, so it queries it when
> Emacs queries fontconfig for available fonts covering a certain
> codepoint.
> 
> Robert
> 

Right, so briefly testing, I think the scrolling hang is gone thanks to

(add-to-list 'face-ignored-fonts "Adobe.*Blank")

However, hang from opening certain files is still there and is also 
font-related, though with a different symptom:

Thread 1 "emacs" received signal SIGABRT, Aborted.
0x00007ffff5c0646f in poll () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff5c0646f in poll () at /usr/lib/libc.so.6
#1  0x00007ffff6e2a63b in  () at /usr/lib/libxcb.so.1
#2  0x00007ffff6e2c08f in  () at /usr/lib/libxcb.so.1
#3  0x00007ffff6e2c203 in xcb_wait_for_reply64 () at /usr/lib/libxcb.so.1
#4  0x00007ffff6e904b9 in _XReply () at /usr/lib/libX11.so.6
#5  0x00007ffff6e71e71 in  () at /usr/lib/libX11.so.6
#6  0x00007ffff6e7254e in XLoadQueryFont () at /usr/lib/libX11.so.6
#7  0x0000555555a8d875 in xfont_supported_scripts
     (display=0x555556594940, fontname=0x55556a79e428 "-misc-trirong 
medium-medium-i-normal--0-0-0-0-p-0-iso10646-1", 
props=XIL(0x7ffff27926e5), encoding=0x7ffff23ab8d0) at xfont.c:266
#8  0x0000555555a8e5eb in xfont_list_pattern (display=0x555556594940, 
pattern=0x7fffffff6450 "-*-*-*-*-*-*-*-*-*-*-*-*-iso10646-1", 
registry=XIL(0x84c0), script=XIL(0x2aaa9c470db0)) at xfont.c:441
#9  0x0000555555a8e94d in xfont_list (f=0x5555564db330, 
spec=XIL(0x7ffff2794475)) at xfont.c:486
#10 0x0000555555983724 in font_list_entities (f=0x5555564db330, 
spec=XIL(0x55556932a495)) at font.c:2794
#11 0x000055555598588c in font_find_for_lface (f=0x5555564db330, 
attrs=0x555564a499c0, spec=XIL(0x5555568e6125), c=-1) at font.c:3285
#12 0x0000555555ab4a23 in fontset_find_font 
(fontset=XIL(0x555569329a45), c=43695, face=0x555564a499c0, 
charset_id=-1, fallback=false) at fontset.c:661
#13 0x0000555555ab514f in fontset_font (fontset=XIL(0x5555568a0d45), 
c=43695, face=0x555564a499c0, id=-1) at fontset.c:783
#14 0x0000555555ab5cff in face_for_char (f=0x5555564db330, 
face=0x555564a499c0, c=43695, pos=38, object=XIL(0)) at fontset.c:997
#15 0x00005555555d0b96 in FACE_FOR_CHAR (f=0x5555564db330, 
face=0x555564a499c0, character=43695, pos=38, object=XIL(0)) at 
dispextern.h:1891
#16 0x00005555555f091a in get_next_display_element (it=0x7fffffff8040) 
at xdisp.c:7651
#17 0x0000555555626aae in display_line (it=0x7fffffff8040, 
cursor_vpos=8) at xdisp.c:23222
#18 0x0000555555617030 in try_window (window=XIL(0x5555564db575), 
pos=..., flags=1) at xdisp.c:19182
#19 0x0000555555613c67 in redisplay_window (window=XIL(0x5555564db575), 
just_this_one_p=false) at xdisp.c:18600
#20 0x000055555560aefd in redisplay_window_0 
(window=XIL(0x5555564db575)) at xdisp.c:16314
#21 0x000055555594c082 in internal_condition_case_1 (bfun=0x55555560aebb 
<redisplay_window_0>, arg=XIL(0x5555564db575), 
handlers=XIL(0x7ffff279a6f3), hfun=0x55555560ae83 <redisplay_window_error>)
     at eval.c:1380
#22 0x000055555560ae55 in redisplay_windows (window=XIL(0x5555564db575)) 
at xdisp.c:16294
#23 0x000055555560ae06 in redisplay_windows (window=XIL(0x5555629c9865)) 
at xdisp.c:16288
#24 0x000055555560978e in redisplay_internal () at xdisp.c:15762
#25 0x000055555560712f in redisplay () at xdisp.c:14989
#26 0x00005555557e20ca in read_char (commandflag=1, 
map=XIL(0x555569315a13), prev_event=XIL(0), 
used_mouse_menu=0x7fffffffd3f5, end_time=0x0) at keyboard.c:2493
#27 0x00005555557f5a94 in read_key_sequence (keybuf=0x7fffffffd5e0, 
prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, 
fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9553
#28 0x00005555557de249 in command_loop_1 () at keyboard.c:1350
#29 0x000055555594bfa5 in internal_condition_case (bfun=0x5555557ddda4 
<command_loop_1>, handlers=XIL(0x90), hfun=0x5555557dd370 <cmd_error>) 
at eval.c:1356
#30 0x00005555557dd97c in command_loop_2 (ignore=XIL(0)) at keyboard.c:1091
#31 0x000055555594b3ea in internal_catch (tag=XIL(0xd530), 
func=0x5555557dd94e <command_loop_2>, arg=XIL(0)) at eval.c:1117
#32 0x00005555557dd919 in command_loop () at keyboard.c:1070
#33 0x00005555557dce47 in recursive_edit_1 () at keyboard.c:714
#34 0x00005555557dd046 in Frecursive_edit () at keyboard.c:786
#35 0x00005555557d313e in main (argc=1, argv=0x7fffffffda68) at emacs.c:2062

Lisp Backtrace:
"redisplay_internal (C function)" (0x0)
(gdb) f 7
#7  0x0000555555a8d875 in xfont_supported_scripts 
(display=0x555556594940, fontname=0x55556a79e428 "-misc-trirong 
medium-medium-i-normal--0-0-0-0-p-0-iso10646-1", props=XIL(0x7ffff27926e5),
     encoding=0x7ffff23ab8d0) at xfont.c:266
266	      xfont = XLoadQueryFont (display, fontname);
(gdb) pp fontname
#<INVALID_LISP_OBJECT 0x55556a79e428>
(gdb) pp fontname
#<INVALID_LISP_OBJECT 0x55556a79e428>
(gdb) p fontname
$3 = 0x55556a79e428 "-misc-trirong 
medium-medium-i-normal--0-0-0-0-p-0-iso10646-1"
(gdb)


Back to gnu.emacs.bug | Previous | Next | Find similar


Thread

bug#43177: Bug: Emacs 27.1 hangs forever in `FcCharSetSubtractCount' from '/usr/lib/libfontconfig.so.1' Alexander Shukaev <emacs@Alexander.Shukaev.name> - 2020-09-03 11:40 +0200

csiph-web