I think we can ignore SIGPIPE when "send" syscall can return EPIPE:
diff --git a/src/lib/sockio-c.c b/src/lib/sockio-c.c
index 17cc1056..683fd7c4 100644
--- a/src/lib/sockio-c.c
+++ b/src/lib/sockio-c.c
@@ -882,9 +882,11 @@ open_server(char *server_name)
init_socks();
#ifndef HAVE_MSG_NOSIGNAL
+#ifndef HAVE_EPIPE
#ifdef SIGPIPE
bsdSignal(SIGPIPE, sigpipe_handler,RestartSystemCalls);
#endif
+#endif
#endif
if (make_server_name(name, server_name) == -1)
return -2;
On Mon, Jan 21, 2019 at 7:43 PM oldk1331 <[email protected]> wrote:
>
> CTRL-C can not interrupt a loop on macOS with sbcl.
>
> The reason is that macOS doesn't have MSG_NOSIGNAL, so we
> install a SIGPIPE handler in src/lib/sockio-c.c.
>
> But it seems that SIGPIPE is used by SIGINT somehow in sbcl:
> https://github.com/sbcl/sbcl/blob/master/src/code/target-signal.lisp#L201
>
> Is using SO_NOSIGPIPE a possible solution? Or are there
> better solutions?
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/fricas-devel/CAGBJN93wZUzkQY-ZHFf6qAGvSKbYAxcSih1d0Lx%3DGsaonRjYiQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.