GNU bug report logs - #39977
28.0.50; Unhelpful stack trace

Previous Next

Package: emacs;

Reported by: Madhu <enometh <at> meer.net>

Date: Sat, 7 Mar 2020 18:09:01 UTC

Severity: normal

Tags: fixed

Found in version 28.0.50

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #86 received at 39977 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: enometh <at> meer.net, 39977 <at> debbugs.gnu.org
Subject: Re: bug#39977: 28.0.50; Unhelpful stack trace
Date: Thu, 19 Mar 2020 09:55:07 +0100
>> We already disallow deleting the last live or visible frame and the last
>> window on a frame.
>
> Those situations are easy to detect, so we do that.

For some value of easy.

> You are now
> proposing something more sophisticated than that, and I'm afraid that
> doing so is not as straightforward as in those few simple cases we
> already handle.

I'm afraid that we already might mishandle some of those simple cases.

>> So the redisplay code, whenever it runs Lisp in between, could
>> simply set a boolean that will disallow deleting any window or frame
>> as well as setting the window configuration and other dangerous
>> operations that implicitly might kill a window or a buffer.
>
> The problem is how to do this without breaking legitimate code.  For
> example, changing the window configuration temporarily, then changing
> it back is quite legitimate,

Right in the middle of redisplay, while constructing the mode line or
the title format?  I won't object but this is something we should decide
ASAP in order to decide which kind of solution to pursue.

> so summarily disallowing such actions is
> too drastic and will be hard to justify.
[...]
> All we need to do is avoid crashing and keeping the display
> up-to-date; any other outcome: error messages, code that doesn't do
> what the author expected/intended, and any other annoyance -- are
> completely fine, because whoever writes such nasty code will learn a
> lesson.

Hmmm...  I thought we have all those emacs_abort instances to ease
debugging.

martin




This bug report was last modified 4 years and 285 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.