On Mon, Nov 25, 2013 at 09:32:13AM -0500, Jeff King wrote: > > But I then decided that if a 3rd library has one way to generate > > SIGPIPE it may very well have another in a separate spot so I decided > > to do the wrap at the top level immediately in the entry point when > > getting called by the application. Following that, the SIGPIPE > > ignore/restore should rather be made in curl_multi_cleanup. > > Unfortunately, we need an actual SessionHandle to know whether it is OK > to reset signals at all. There may be a more elegant way of checking > that, but here's the patch series I came up with.
Scratch that. I had originally written something like: if (conn->data) sigpipe_ignore(conn->data, &pipe); Curl_disconnect(conn, ...); sigpipe_restore(&pipe); but while sending it out, I realized that the "data" we attach to each connection when we close it is just the multi->closure_handle. So I was able to hoist the check out to curl_multi_cleanup (and that's what I just sent). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html