aboutsummaryrefslogtreecommitdiffstats
path: root/src/process.c
diff options
context:
space:
mode:
authorJim Blandy1992-04-24 08:11:54 +0000
committerJim Blandy1992-04-24 08:11:54 +0000
commit4746118aca2d5cbdd054b4af4814d56550dfbc79 (patch)
tree370e07c6950794f936bc8d434cb0560d883e4a0b /src/process.c
parentd4327fecc103493bc8275c3580b05c06c9fcc019 (diff)
downloademacs-4746118aca2d5cbdd054b4af4814d56550dfbc79.tar.gz
emacs-4746118aca2d5cbdd054b4af4814d56550dfbc79.zip
*** empty log message ***
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/process.c b/src/process.c
index 1bdc27be91b..442cae6d159 100644
--- a/src/process.c
+++ b/src/process.c
@@ -403,7 +403,7 @@ status_message (status)
403} 403}
404 404
405#ifdef HAVE_PTYS 405#ifdef HAVE_PTYS
406static pty_process; 406static int pty_process;
407 407
408/* Open an available pty, returning a file descriptor. 408/* Open an available pty, returning a file descriptor.
409 Return -1 on failure. 409 Return -1 on failure.
@@ -1803,6 +1803,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
1803 if (read_kbd && detect_input_pending ()) 1803 if (read_kbd && detect_input_pending ())
1804 break; 1804 break;
1805 1805
1806#ifdef SIGIO
1806 /* If we think we have keyboard input waiting, but didn't get SIGIO 1807 /* If we think we have keyboard input waiting, but didn't get SIGIO
1807 go read it. This can happen with X on BSD after logging out. 1808 go read it. This can happen with X on BSD after logging out.
1808 In that case, there really is no input and no SIGIO, 1809 In that case, there really is no input and no SIGIO,
@@ -1813,6 +1814,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
1813 */ 1814 */
1814 if (read_kbd && interrupt_input && (FD_ISSET (fileno (stdin), &Available))) 1815 if (read_kbd && interrupt_input && (FD_ISSET (fileno (stdin), &Available)))
1815 kill (0, SIGIO); 1816 kill (0, SIGIO);
1817#endif
1816 1818
1817#ifdef vipc 1819#ifdef vipc
1818 /* Check for connection from other process */ 1820 /* Check for connection from other process */
@@ -2106,12 +2108,14 @@ send_process (proc, buf, len)
2106 while (len > 0) 2108 while (len > 0)
2107 { 2109 {
2108 int this = len; 2110 int this = len;
2111 SIGTYPE (*old_sigpipe)();
2112
2109 /* Don't send more than 500 bytes at a time. */ 2113 /* Don't send more than 500 bytes at a time. */
2110 if (this > 500) 2114 if (this > 500)
2111 this = 500; 2115 this = 500;
2112 signal (SIGPIPE, send_process_trap); 2116 old_sigpipe = signal (SIGPIPE, send_process_trap);
2113 rv = write (XFASTINT (XPROCESS (proc)->outfd), buf, this); 2117 rv = write (XFASTINT (XPROCESS (proc)->outfd), buf, this);
2114 signal (SIGPIPE, SIG_DFL); 2118 signal (SIGPIPE, old_sigpipe);
2115 if (rv < 0) 2119 if (rv < 0)
2116 { 2120 {
2117 if (0 2121 if (0