Subject: bug#28176: 26.0.50; Emacs hangs on entering a specific article in gnus

From: Sam Steingold <[email-masked]>
Date: Mon, 21 Aug 2017 15:40:41 -0400

> * Eli Zaretskii <[email-masked]> [2017-08-21 22:03:30 +0300]:
>
>> From: Sam Steingold <[email-masked]>
>> Cc: [email-masked]
>> Date: Mon, 21 Aug 2017 14:46:30 -0400
>> 
>> > Can you show a backtrace when it hangs like that?
>> 
>> Alas, no: I cannot break out of the hang.
>
> You could start Emacs under a debugger to begin with, and when Emacs
> hangs, type "kill -USR1".
>
>> Emacs hangs with a yellow triangle in the middle of the frame
>> (indicating ding) but C-g and C-] do not interrupt.
>> CPU usage is at 90%.
>
> This most probably means Emacs is signaling an error in redisplay
> code, which causes an infinite loop of signaling an error, then
> redisplaying, then signaling an error again, and so on and so forth.
> Still, a C-level backtrace might show which Lisp code runs and what C
> call chain is involved.  So it's useful information, if you can
> provide it.

--8<---------------cut here---------------start------------->8---
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
    frame #0: 0x0000000100030788 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=8, field_width=0, precision=<unavailable>, elt=4328980291, props=4412454691, risky=<unavailable>) at xdisp.c:23603 [opt]
    frame #1: 0x00000001000309d0 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=<unavailable>, field_width=0, precision=<unavailable>, elt=<unavailable>, props=4412454691, risky=<unavailable>) at xdisp.c:23692 [opt]
    frame #2: 0x00000001000309d0 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=<unavailable>, field_width=0, precision=<unavailable>, elt=<unavailable>, props=4412454691, risky=<unavailable>) at xdisp.c:23692 [opt]
    frame #3: 0x0000000100030b05 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=4, field_width=0, precision=-66, elt=<unavailable>, props=0, risky=<unavailable>) at xdisp.c:23629 [opt]
    frame #4: 0x00000001000309d0 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=<unavailable>, field_width=0, precision=<unavailable>, elt=<unavailable>, props=0, risky=<unavailable>) at xdisp.c:23692 [opt]
    frame #5: 0x00000001000309d0 emacs`display_mode_element(it=0x00007fff5fbf8258, depth=<unavailable>, field_width=0, precision=<unavailable>, elt=<unavailable>, props=0, risky=<unavailable>) at xdisp.c:23692 [opt]
    frame #6: 0x000000010001bf09 emacs`display_mode_line(w=0x000000010482ea30, face_id=MODE_LINE_FACE_ID, format=4315887955) at xdisp.c:23211 [opt]
    frame #7: 0x000000010004b2e4 emacs`display_mode_lines(w=0x000000010482ea30) at xdisp.c:23146 [opt]
    frame #8: 0x000000010005180f emacs`redisplay_window(window=4370655797, just_this_one_p=<unavailable>) at xdisp.c:17397 [opt]
    frame #9: 0x000000010004db36 emacs`redisplay_window_0(window=<unavailable>) at xdisp.c:14780 [opt]
  * frame #10: 0x0000000100136e86 emacs`internal_condition_case_1(bfun=(emacs`redisplay_window_0 at xdisp.c:14779), arg=4370655797, handlers=<unavailable>, hfun=(emacs`redisplay_window_error at xdisp.c:14771)) at eval.c:1347 [opt]
    frame #11: 0x000000010004d19d emacs`redisplay_windows(window=<unavailable>) at xdisp.c:14760 [opt]
    frame #12: 0x000000010004d164 emacs`redisplay_windows(window=<unavailable>) at xdisp.c:14754 [opt]
    frame #13: 0x00000001000282af emacs`redisplay_internal at xdisp.c:14249 [opt]
    frame #14: 0x00000001000bf92e emacs`read_char(commandflag=1, map=4316828339, prev_event=0, used_mouse_menu=0x00007fff5fbfeabf, end_time=0x0000000000000000) at keyboard.c:2484 [opt]
    frame #15: 0x00000001000bd40a emacs`read_key_sequence(keybuf=<unavailable>, bufsize=30, prompt=<unavailable>, dont_downcase_last=<unavailable>, can_return_switch_frame=<unavailable>, fix_current_buffer=<unavailable>, prevent_redisplay=<unavailable>) at keyboard.c:9151 [opt]
    frame #16: 0x00000001000bbc02 emacs`command_loop_1 at keyboard.c:1372 [opt]
    frame #17: 0x0000000100136e12 emacs`internal_condition_case(bfun=(emacs`command_loop_1 at keyboard.c:1263), handlers=<unavailable>, hfun=(emacs`cmd_error at keyboard.c:942)) at eval.c:1323 [opt]
    frame #18: 0x00000001000ca800 emacs`command_loop_2(ignore=<unavailable>) at keyboard.c:1114 [opt]
    frame #19: 0x00000001001366b9 emacs`internal_catch(tag=<unavailable>, func=(emacs`command_loop_2 at keyboard.c:1110), arg=0) at eval.c:1088 [opt]
    frame #20: 0x00000001000bae5e emacs`command_loop at keyboard.c:1093 [opt]
    frame #21: 0x00000001000bad6f emacs`recursive_edit_1 at keyboard.c:699 [opt]
    frame #22: 0x00000001000bafa3 emacs`Frecursive_edit at keyboard.c:770 [opt]
    frame #23: 0x00000001000b9bb7 emacs`main(argc=0, argv=<unavailable>) at emacs.c:1706 [opt]
    frame #24: 0x00007fffae679235 libdyld.dylib`start + 1
    frame #25: 0x00007fffae679235 libdyld.dylib`start + 1
--8<---------------cut here---------------end--------------->8---

-- 
Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504
http://steingoldpsychology.com http://www.childpsy.net https://ffii.org
http://mideasttruth.com http://no2bds.org http://think-israel.org
Life is like a diaper -- short and loaded.