GNU bug report logs - #47244
28.0.50; SIGSEGV in long-runnning Emacs

Previous Next

Package: emacs;

Reported by: Michael Welsh Duggan <md5i <at> md5i.com>

Date: Thu, 18 Mar 2021 15:40:01 UTC

Severity: normal

Found in version 28.0.50

Done: Michael Welsh Duggan <mwd <at> md5i.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: martin rudalics <rudalics <at> gmx.at>
Cc: mwd <at> md5i.com, 47244 <at> debbugs.gnu.org, schwab <at> linux-m68k.org, mwd <at> cert.org
Subject: bug#47244: 28.0.50; SIGSEGV in long-runnning Emacs
Date: Fri, 19 Mar 2021 10:19:55 +0200
> Cc: mwd <at> md5i.com, 47244 <at> debbugs.gnu.org, mwd <at> cert.org
> From: martin rudalics <rudalics <at> gmx.at>
> Date: Fri, 19 Mar 2021 09:15:07 +0100
> 
>  >>> So the selected window's buffer was killed.  How is that possible?
>  >>
>  >> Perhaps during run_window_change_functions.
>  >
>  > Something like that, yes.  But I don't understand how that can happen
>  > technically: kill-buffer selects another buffer when killing the
>  > current one.  So how was that buffer killed, and yet stayed current?
> 
> It's a problem of any hook we run during redisplay:
> 
> (1) Redisplay chooses a window as the selected and its buffer as the
>      current one.
> 
> (2) Lisp code in a hook deletes that window and/or its buffer.
> 
> (3) Redisplay continues to work on that window and/or its buffer as if
>      it were still alive.

Sorry, I don't understand: when kill-buffer kills the current buffer,
it replaces it with another one.  Are you saying we have a way of
killing buffers that bypasses kill-buffer? if so, can you describe how
that can be done?

Or what else am I missing?




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

Previous Next


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