diff options
| author | Eli Zaretskii | 2005-05-21 11:58:49 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 2005-05-21 11:58:49 +0000 |
| commit | 0ff692700bb0cb6f75e292c6817debe2ef65224e (patch) | |
| tree | 42c92ae42c194032be803a52fe1374f96ec85486 /src/process.c | |
| parent | 6f0de615c1fb07e988e88b405b7d60f7cf7edf93 (diff) | |
| download | emacs-0ff692700bb0cb6f75e292c6817debe2ef65224e.tar.gz emacs-0ff692700bb0cb6f75e292c6817debe2ef65224e.zip | |
(send_process): Restore the SIGPIPE handler if we catch a SIGPIPE.
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/process.c b/src/process.c index aad9e70731f..db7d9350821 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -5134,6 +5134,7 @@ send_process (proc, buf, len, object) | |||
| 5134 | int rv; | 5134 | int rv; |
| 5135 | struct coding_system *coding; | 5135 | struct coding_system *coding; |
| 5136 | struct gcpro gcpro1; | 5136 | struct gcpro gcpro1; |
| 5137 | volatile SIGTYPE (*old_sigpipe)(); | ||
| 5137 | 5138 | ||
| 5138 | GCPRO1 (object); | 5139 | GCPRO1 (object); |
| 5139 | 5140 | ||
| @@ -5258,7 +5259,6 @@ send_process (proc, buf, len, object) | |||
| 5258 | while (len > 0) | 5259 | while (len > 0) |
| 5259 | { | 5260 | { |
| 5260 | int this = len; | 5261 | int this = len; |
| 5261 | SIGTYPE (*old_sigpipe)(); | ||
| 5262 | 5262 | ||
| 5263 | /* Decide how much data we can send in one batch. | 5263 | /* Decide how much data we can send in one batch. |
| 5264 | Long lines need to be split into multiple batches. */ | 5264 | Long lines need to be split into multiple batches. */ |
| @@ -5401,6 +5401,7 @@ send_process (proc, buf, len, object) | |||
| 5401 | #endif /* not VMS */ | 5401 | #endif /* not VMS */ |
| 5402 | else | 5402 | else |
| 5403 | { | 5403 | { |
| 5404 | signal (SIGPIPE, old_sigpipe); | ||
| 5404 | #ifndef VMS | 5405 | #ifndef VMS |
| 5405 | proc = process_sent_to; | 5406 | proc = process_sent_to; |
| 5406 | p = XPROCESS (proc); | 5407 | p = XPROCESS (proc); |