GNU bug report logs -
#47244
28.0.50; SIGSEGV in long-runnning Emacs
Previous Next
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 #320 received at 47244 <at> debbugs.gnu.org (full text, mbox):
Michael Welsh Duggan <mwd <at> cert.org> writes:
> martin rudalics <rudalics <at> gmx.at> writes:
>
>> >> The mysterious aspect is (2): Why did window_list skip the *Server*
>> >> window?
>> >
>> > Good question. I plan to set Vwindow_list to nil and call it to see
>> > what happens.
>>
>> This should resolve the mystery.
>
> I wish it did. After doing this, Vwindow_list has six entries, one for
> each selected_window on each frame, and one for each minibuffer window
> on each frame. This includes the "*Server*" buffer.
Just a shot in the dark here. The only way I can think of this
occurring (Vwindow_list being too small), is that something modified
Vwindow_list when we don't expect it to be modified. I looked through
all the uses of Vwindow_list and window_list(), and they all look
kosher. The only modification seems to be setting Vwindow_list to nil.
But window_list() does call into lisp (nconc2, which calls Fnconc) when
constructing Vwindow_list, and it uses Vwindow_list as a temporary in
the process. Is it possible that during that call something happens
asynchronously (via gc?) that calls something that sets Vwindow_list
to nil again, while Vwindow_list is being constructed? I don't think
so, off hand, but I'm grasping at straws.
--
Michael Welsh Duggan
(md5i <at> md5i.com)
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.