Subject: bug#78054: 31.0.50; igc: infinite recursion

From: Óscar Fuentes <[email-masked]>
Date: Fri, 25 Apr 2025 12:32:59 +0200

Pip Cet <[email-masked]> writes:

> I think the unusual thing in your session was that the buffer which was
> at the head of the alist produced an undo limit warning, and we always
> start our idle work by compacting the first buffer in the list.

My guess is that this was the sequence of actions:

* Magit started a refresh status sequence, wich requires multiple
  process invocations.

* Meanwhile, the non-idle timer associated with mini-echo.el was
  triggered.
  
* mini-echo.el modified *Minibuf-1*, which has undo enabled.

* This caused an undo limit warning, which started to whole mess.

As a temporary workaround I will disable undo in *Minibuf-1* while it
is modified by mini-echo.el.

> I'm surprised you didn't see a stack overflow manifesting as a segfault,
> but maybe that would have happened eventually.

Emacs was using 100% of one core, but its RES memory was increasing at
about just some dozens megabytes per minute.