bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#66186: "make lisp/eshell/esh-proc-tests" fails intermittently since


From: Eli Zaretskii
Subject: bug#66186: "make lisp/eshell/esh-proc-tests" fails intermittently since 7e50861ca7ed3f620fe62ac6572f6e88b3600ece
Date: Mon, 25 Sep 2023 10:43:00 +0300

> Date: Mon, 25 Sep 2023 00:18:02 -0700
> Cc: jschmidt4gnu@vodafonemail.de, 66186@debbugs.gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> 
> On 2023-09-24 23:47, Eli Zaretskii wrote:
> > Perhaps process-send-string should install a temporary SIGPIPE
> > handler, at least optionally?  Paul, WDYT?
> 
> Sounds like a recipe for bad race conditions.
> 
> I'm not following the problem closely. However, the usual way to handle 
> this is to use sendto's MSG_NOSIGNAL option (GNU/Linux) or use 
> setsockopt with SO_NOSIGPIPE (the BSDs and macOS). This should prevent 
> those SIGPIPEs from occurring.

I don't think this is about a network subprocess.  It's about a real
subprocess which runs programs.

> Alternatively, but this would be a bigger lift, you can arrange for a 
> SIGPIPE signal handler to be enabled all the time, even in batch mode. 
> But then you'll need to resurrect the batch-mode code that used to deal 
> with this sort of thing (and I've forgotten what it is and as I vaguely 
> recall it was a bit buggy but you can look at the change history). The 
> basic idea is that in batch mode, if you ignore SIGPIPE then Emacs 
> should always check for write errors and exit whenever they happen.

Hmm...





reply via email to

[Prev in Thread] Current Thread [Next in Thread]