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


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

From: martin rudalics <rudalics <at> gmx.at>
To: Michael Welsh Duggan <mwd <at> cert.org>
Cc: Michael Welsh Duggan <mwd <at> md5i.com>,
 "47244 <at> debbugs.gnu.org" <47244 <at> debbugs.gnu.org>,
 "schwab <at> linux-m68k.org" <schwab <at> linux-m68k.org>
Subject: Re: bug#47244: 28.0.50; SIGSEGV in long-runnning Emacs
Date: Wed, 7 Apr 2021 20:48:06 +0200
[Message part 1 (text/plain, inline)]
> Triggered.  Here's the backtrace:
>
> #0  terminate_due_to_signal (sig=6, backtrace_limit=2147483647)
>      at ../../master/src/emacs.c:379
> #1  0x00005555557c4aa2 in die
>      (msg=0x5555559105c8 "window_list_length == list_length (Vwindow_list)", file=0x55555590f9cf "../../master/src/window.c", line=2585)
>      at ../../master/src/alloc.c:7420
>
[...]
> Lisp Backtrace:
> "window-list-1" (0xffffbfa0)
> "replace-buffer-in-windows" (0xffffc4a8)
> "kill-buffer" (0xffffc710)
> 0x57821b48 PVEC_COMPILED
> "substitute-command-keys" (0xffffd3d8)
> "command-error-default-function" (0xffffd628)
> "apply" (0xffffd7e8)
> 0xf2c1d0c8 PVEC_COMPILED

All we can conclude from that is that Vwindow_list must have been
clobbered before `kill-buffer' triggered the execution of
`replace-buffer-in-windows'.  When and how that happened is yet unclear.

The attached should cure the crashes by simply reconstructing the full
list after window_list notices that Vwindow_list has changed length.

martin
[selected_window_contents.diff (text/x-patch, attachment)]

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.