Subject: Re: 30.1; accept-process-output not allowed in threads on macOS

From: John Wiegley <[email-masked]>
Date: Thu, 03 Jul 2025 10:24:44 -0700

>>>>> Eli Zaretskii <[email-masked]> writes:

>> If you now attempt to evaluate this code in a graphical Emacs running on
>> macOS, it will immediately stall out. Running Emacs under lldb shows that it
>> is reporting the following exception continuously:

> Please elaborate on "will immediately stall". Does it mean it will not "run
> forever" as in batch mode? If so, what will it do instead?

By stall I mean it shows a “spinning cursor of death” and will never recover.
Meanwhile, if I am running under the LLDB debugger, I see the exception I had
posted being repeated continuously for as long as Emacs is running.

>> #+begin_example
>> 2025-07-02 12:10:23.857272-0700 Emacs[34130:54192679] [General] nextEventMatchingMask should only be called from the Main Thread!

> This message seems to be relevant, no? Can some macOS expert explain what it
> means, and how is that related to ns_select?

Yes, I think this is entirely relevant. :) I will try Robert’s suggestion next.

John