GNU bug report logs - #35784
(force-window-update <DELETED-WINDOW>) segfaults

Previous Next

Package: emacs;

Reported by: Marc Munro <marc <at> bloodnok.com>

Date: Fri, 17 May 2019 21:07:02 UTC

Severity: normal

Tags: fixed, patch

Fixed in version 26.3

Done: Noam Postavsky <npostavs <at> gmail.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: Noam Postavsky <npostavs <at> gmail.com>
Cc: 35784 <at> debbugs.gnu.org, rudalics <at> gmx.at, marc <at> bloodnok.com
Subject: bug#35784: emacs 26 crash
Date: Sat, 18 May 2019 18:39:59 +0300
> From: Noam Postavsky <npostavs <at> gmail.com>
> Cc: Eli Zaretskii <eliz <at> gnu.org>,  35784 <at> debbugs.gnu.org,  Marc Munro <marc <at> bloodnok.com>
> Date: Sat, 18 May 2019 10:19:22 -0400
> 
> martin rudalics <rudalics <at> gmx.at> writes:
> 
> >> I'm able to reproduce using the latest emacs-26 branch (I don't have the
> >> point releases checked out at the moment), both lucid and gtk3 builds.
> >> It doesn't reproduce using master, there is a Lisp error (Symbol's
> >> definition is void: new-frame) that interferes.
> >
> > Could you try with 'make-frame' instead of 'new-frame' (or defaliasing
> > 'new-frame' to 'make-frame')?  Here I can't reproduce the crash with
> > Emacs 27 and I'm a bit too lazy to delve deeper on my broken systems.
> 
> Ah, right, adding
> 
>     (defalias 'new-frame 'make-frame)
> 
> lets it reproduce on master too.

In case someone is trying to debug this, here's what I can glean from
the backtrace:

> #2  0x000000000061849e in die (msg=0x743f3f "BUFFERP (a)",
> file=0x743f36 "buffer.h", line=914) at alloc.c:7406
> #3  0x00000000005802b3 in XBUFFER (a=0) at buffer.h:914
> #4  0x0000000000468bb3 in mark_window_display_accurate_1 (w=0x558e410,
> accurate_p=false) at xdisp.c:14754
>         b = 0x7ffe74b60e40
> #5  0x0000000000468ffd in mark_window_display_accurate
> (window=89711637, accurate_p=false) at xdisp.c:14811
>         w = 0x558e410
> #6  0x00000000004bbe06 in Fforce_window_update (object=89711637) at
> window.c:3643
>         w = 0x558e410

This seems to imply that we are trying to update a non-leaf window,
something that should never happen.  There's no Lisp-level backtrace,
so it's hard to tell what Lisp called force-window-update, and how the
window in question became non-leaf, but maybe some crazy Lisp hook
switched windows behind redisplay's back or something.




This bug report was last modified 6 years and 86 days ago.

Previous Next


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