diff options
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/process.c b/src/process.c index c6a9b255243..a557ee30c27 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -5108,6 +5108,7 @@ send_process_trap () | |||
| 5108 | sigrelse (SIGPIPE); | 5108 | sigrelse (SIGPIPE); |
| 5109 | sigrelse (SIGALRM); | 5109 | sigrelse (SIGALRM); |
| 5110 | #endif /* BSD4_1 */ | 5110 | #endif /* BSD4_1 */ |
| 5111 | sigunblock (sigmask (SIGPIPE)); | ||
| 5111 | longjmp (send_process_frame, 1); | 5112 | longjmp (send_process_frame, 1); |
| 5112 | } | 5113 | } |
| 5113 | 5114 | ||
| @@ -5299,7 +5300,11 @@ send_process (proc, buf, len, object) | |||
| 5299 | 0, datagram_address[outfd].sa, | 5300 | 0, datagram_address[outfd].sa, |
| 5300 | datagram_address[outfd].len); | 5301 | datagram_address[outfd].len); |
| 5301 | if (rv < 0 && errno == EMSGSIZE) | 5302 | if (rv < 0 && errno == EMSGSIZE) |
| 5302 | report_file_error ("sending datagram", Fcons (proc, Qnil)); | 5303 | { |
| 5304 | signal (SIGPIPE, old_sigpipe); | ||
| 5305 | report_file_error ("sending datagram", | ||
| 5306 | Fcons (proc, Qnil)); | ||
| 5307 | } | ||
| 5303 | } | 5308 | } |
| 5304 | else | 5309 | else |
| 5305 | #endif | 5310 | #endif |