Subject: Re: bug#75056: 31.0.50; tty-child-frames with server / multiple clients possible hangs

From: Gerd Möllmann <[email-masked]>
Date: Fri, 24 Jan 2025 10:32:15 +0100

Len Trigg <[email-masked]> writes:

> OK, that's fixed the crash, but my original problem persists, with a
> new artifact. This time slightly different repro steps to make things
> more visible:

Okay, that's what I intended to fix. Thanks for the feedback.

I think the rest of the behavior is somehow multi-tty. We talked about
that already. I don't think I'll tackle that, sorry.

>
> - Open two terminal windows side by side

> - In the first terminal: emacs -nw --init-directory=~/emacs-test
> (using the original init.el I sent)

> - In the second terminal: emacsclient -nw, followed by C-x b C-n RET
> (to switch buffers using tty child frame, leaving the cursor in
> *Messages* and the tty child frame has been dismissed)

> - Back to the first terminal: C-x b C-n RET (as above, this switches
> buffers using the tty child frame, leaving the cursor in *Messages*
> and the tty child frame has been dismissed.

> - Now, notice that immediately upon switching focus back to the second
> terminal (I use focus follows mouse) we find the emacsclient "hung",
> but back on the first terminal the tty child frame has magically
> represented itself even though it had been dismissed!!!

> - If we move the mouse focus back to the first terminal, the tty child
> frame disappears.
>
> On Fri, 24 Jan 2025 at 18:26, Gerd Möllmann <[email-masked]> wrote:
>
>  Gerd Möllmann <[email-masked]> writes:
>
>  > Anyway. I'll develop a fix for that immediate problem tomorrow. I think
>  > I'll just make it not crash for now, and perform the update anyway,
>  > which I guess 30 would do.
>
>  Pushed to master.