bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#47207: 28.0.50; decode_next_window_args crash


From: martin rudalics
Subject: bug#47207: 28.0.50; decode_next_window_args crash
Date: Thu, 15 Apr 2021 16:45:20 +0200

> That's quite an involved thread.  I've read through it, but can't
> remember seeing a firm decision on how to fix the problem, or even if it
> was fixed then.

It wasn't fixed then.

> The current problem in minibuf.c seems to be that we assume
> f->minibuffer_window to be non-nil in several (~6) places, rather than
> checking it.

We assume that it is a live window.

> In most of these places, if we detect NILP (f->m_w), we can simply skip
> the action we were intending to take.  This is certainly the case in the
> bit that gave you the trouble in read_minibuf_unwind, where we're
> stepping through all frames looking for the expired minibuffer.

The most secure way is to skip the action whenever f->minibuffer_window
fails the WINDOW_LIVE_P check.

> It might well be that we never call do_switch_frame to a tool-tip frame,
> for example.  Do you know if this is the case?  This could save some
> checking code.

I wrote some code that avoids that a tooltip window ever gets selected
and do_switch_frame returns silently when asked to switch to a tooltip
frame.  But I wouldn't rely on that - the display engine might still try
to select a tooltip window for some reason.

> So, where do we go from here?  I'm quite willing to make these changes
> to minibuf.c.  Would that be OK with everybody else?

It would be OK with me (and should fix Bug#47774 too).  And please look
into Bug#47781 next.

martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]