Subject: bug#47244: 28.0.50; SIGSEGV in long-runnning Emacs

From: Michael Welsh Duggan <[email-masked]>
Date: Sat, 10 Apr 2021 10:53:56 -0400

martin rudalics <[email-masked]> writes:

>> I've tried to recreate a problem with this patch and have successfully
>> failed.  I'll continue using it for a few days, and I will let you know
>> if I see any problems, but I think that protecting window_list() from
>> quit fixes the problem(s) I reported.
>
> Your impatience revealed this bug and your patience located it.  I now
> attach a clean patch which also protects the occurrence in window_list_1
> although that one doesn't appear so vulnerable - likely because quitting
> always eats the maybe_quit from window_list first.  If you don't see any
> problems with it within a week or so, I'll install it.

Sure.  But I will say that I think protecting the nconc in window_list_1
is not as important, as it, by itself, does not modify any global
state.  In point of fact, it only modifies a local variable.  It may be
that window_loop or replace_buffer_in_windows_safely should be so
protected instead, but I can't say that with any degree of certainty.

-- 
Michael Welsh Duggan
([email-masked])