Subject: Re: bug#79318: 31.1.90; Threads + receiving a signal causes a segfault

From: Eli Zaretskii <[email-masked]>
Date: Wed, 27 Aug 2025 05:26:37 +0300

> From: Spencer Baugh <[email-masked]>
> Cc: Paul Eggert <[email-masked]>,  [email-masked]
> Date: Tue, 26 Aug 2025 15:23:20 -0400
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> >> Date: Tue, 26 Aug 2025 12:19:07 -0400
> >> From:  Spencer Baugh via "Bug reports for GNU Emacs,
> >>  the Swiss army knife of text editors" <[email-masked]>
> >> 
> >> 
> >> repro.el:
> >> 
> >> (make-thread
> >>  (lambda ()
> >>    (sleep-for .1)
> >>    (signal-process (emacs-pid) 'sigint)))
> >> (sleep-for 100)
> >> 
> >> emacs -Q -l ./repro.el
> >> 
> >> Observe Emacs crashes with a segfault while shutting down.
> >
> > I don't see a segfault in your backtrace, only a shutdown due to
> > SIGINT (which is a fatal signal in the configuration you ran -- Paul,
> > am I right?)
> 
> The backtrace is of the point at which there's a segfault.  It happens
> during shutdown.
> 
> >> In gdb, the segfault appears to be because current_thread is NULL.
> >
> > Please show the backtrace from the segfault.
> 
> I did.

Such a backtrace should say that the process was hit by SIGSEGV.
There was no such part in the backtrace you have shown.