Subject: bug#53871: 29.0.50; Emacs freezes with new child-frame option

From: Tassilo Horn <[email-masked]>
Date: Tue, 08 Feb 2022 13:09:38 +0100

Arash Esbati <[email-masked]> writes:

>> After doing that for I while, I checked that `(frame-list)` still
>> contains just a single frame.  How is that for you?
>
> Thanks for your response.  It is the same, only one frame.

Hm, `frame-list' says it doesn't return "tooltip frames".  I think
that's something else than child frames but you might try
`(frames-on-display-list)', too.  It should also return a single frame
unless a show-paren child-frame is still visible.

>> And do you recover from the freeze?
>
> No recovery, Emacs freezes hard and I have to kill it from the shell.

Could you get a backtrace with GDB?  Basically just

  $ gdb src/emacs -x src/.gdbinit
  > run
  # do your scroll stuff until it freezes and then hit C-z in gdb and do
  > xbacktrace # get a lisp backtrace
  > bt full    # get a C backtrace

The C backtrace is probably large so please compress is before attaching
it here.

>> Does doing the recipe with debug-on-quit set and then doing C-g when
>> the freeze occurs shed some light?
>
> See above.  Interesting point is that scrolling with mouse wheel isn't
> a problem, things play havoc if I touch the scroll bar with the mouse
> pointer.

Could you put a message in show-paren--show-context-in-child-frame just
to get a feeling of how often a child frame is created?

Bye,
Tassilo