Subject: bug#79201: 30.1.90; set-process-thread can permanently break fd_callback_info slots

From: Eli Zaretskii <[email-masked]>
Date: Wed, 13 Aug 2025 19:57:41 +0300

> From: Spencer Baugh <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked],
>    [email-masked]
> Date: Wed, 13 Aug 2025 12:46:39 -0400
> 
> > Could the above scenario be the reason for what you see?
> 
> No, because the non-nil waiting_thread is seen in make-process, for a
> process and file descriptor that is newly created.

Then I think the descriptors was closed without clearing the
.waiting_thread member.  So that goes back to what I suggested
up-thread: delete_read_fd and delete_write_fd should clear these
members.  They are called either after closing the descriptor or when
we stop reading/writing to them, so their .waiting_thread member is no
longer useful.