El día sábado, noviembre 07, 2020 a las 02:23:28p. m. +0100, Oswald Buddenhagen escribió:
> On Sat, Nov 07, 2020 at 01:06:00PM +0100, Matthias Apitz wrote: > >There is only a small issue with the handling of SIGCHLD by Mutt which > >leads to an error message by Mutt that the mail wasn't sent (to STDOUT), > >which is not even true, because was sent fine. > > > >----- Forwarded message from "Kevin J. McCarthy" <ke...@8t8.us> ----- > >Mutt by default sets SIGCHLD to an empty signal handler function (for 1.8.3). > >For more recent versions, the handler sets a global variable (which is used > >for background editing process management). > > > >During the fork/exec process for sendmail (and other places), Mutt does set > >up > >SIG_BLOCK for SIGCHLD. > > > it's correct to do that around the fork(), but it strikes me as unwise > to do the waitpid() with blocked sigchld - such practice was > historically problematic, iirc. > > the proposed patch definitely isn't a good idea, as it just papers over > the real problem, whatever it might be. > > fwiw, the incomplete errno handling around the waitpid() calls doesn't > really help, though we know from the strace that it's indeed ECHILD in > this case. Can you please elaborate a bit what's not a good idea with this patch? It deals exactly with returning waitpid() -1 and errno=ECHILD, i.e. with the exact problem we have here, why ever the child was and/or SIG_CHLD was lost. Thanks matthias -- Matthias Apitz, ✉ g...@unixarea.de, http://www.unixarea.de/ +49-176-38902045 Public GnuPG key: http://www.unixarea.de/key.pub Без книги нет знания, без знания нет коммунизма (Влaдимир Ильич Ленин) Without books no knowledge - without knowledge no communism (Vladimir Ilyich Lenin) Sin libros no hay saber - sin saber no hay comunismo. (Vladimir Ilich Lenin)