Subject: Re: bug#30852: 27.0.50; infinite loop in internal-get-lisp-face-attribute

From: Eli Zaretskii <[email-masked]>
Date: Mon, 19 Mar 2018 08:54:49 +0200

> From: Aaron Jensen <[email-masked]>
> Date: Sun, 18 Mar 2018 20:39:29 -0700
> 
> This could be a bug in a package: eterm-256color but I wanted to report
> it in case it's an emacs bug.
> 
> 0. Install https://github.com/dieggsy/eterm-256color devel branch
> 1. emacs -Q
> 2. (require 'eterm-256color-mode)
> 3. (add-hook 'term-mode-hook #'eterm-256color-mode)
> 4. M-x ansi-term
> 
> It's possible that you'll need a color prompt to trigger the inf loop,
> I'm not sure.
> 
> Here is the trace of where it is stuck:
> 
> internal-get-lisp-face-attribute

Are you that saying eterm-256color causes Emacs to create a face alist
that is a circular list?

> * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
>   * frame #0: 0x00000001002a29bd emacs`assq_no_quit(key=0x000000000204ed50, list=0x00000001152f10f3) at fns.c:1422
>     frame #1: 0x000000010016a4d3 emacs`lface_from_face_name_no_resolve(f=0x0000000105008bb0, face_name=0x000000000204ed50, signal_p=true) at xfaces.c:1859

Can you show the value of f->face_alist in this frame #1?