aboutsummaryrefslogtreecommitdiffstats
path: root/src/process.c
diff options
context:
space:
mode:
authorPaul Eggert2012-12-17 09:51:25 -0800
committerPaul Eggert2012-12-17 09:51:25 -0800
commit207a7ef0531ca92468e19115a2c2064c9b22bfd4 (patch)
treeb6cda053458b082f2fb800b432ca8ea288453f84 /src/process.c
parent191562422a2d6d54214e24c349a471ac21ebf178 (diff)
downloademacs-207a7ef0531ca92468e19115a2c2064c9b22bfd4.tar.gz
emacs-207a7ef0531ca92468e19115a2c2064c9b22bfd4.zip
Don't reraise SIGCHLD, as that can now lose.
With the 2012-12-03 fix for Bug#12980 in place, an old workaround for some of that bug's symptoms can now cause Emacs to abort. Remove the workaround. * process.c (wait_reading_process_output): Don't reraise SIGCHLD. The bug that caused SIGCHLD to get lost has been fixed, and the workaround for it can now cause Emacs to abort. Fixes: debbugs:13192
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/process.c b/src/process.c
index 7b21d060cf8..92d5e692d0b 100644
--- a/src/process.c
+++ b/src/process.c
@@ -4773,11 +4773,7 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
4773 Therefore, if we get an error reading and errno = 4773 Therefore, if we get an error reading and errno =
4774 EIO, just continue, because the child process has 4774 EIO, just continue, because the child process has
4775 exited and should clean itself up soon (e.g. when we 4775 exited and should clean itself up soon (e.g. when we
4776 get a SIGCHLD). 4776 get a SIGCHLD). */
4777
4778 However, it has been known to happen that the SIGCHLD
4779 got lost. So raise the signal again just in case.
4780 It can't hurt. */
4781 else if (nread == -1 && errno == EIO) 4777 else if (nread == -1 && errno == EIO)
4782 { 4778 {
4783 struct Lisp_Process *p = XPROCESS (proc); 4779 struct Lisp_Process *p = XPROCESS (proc);
@@ -4795,8 +4791,6 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
4795 p->tick = ++process_tick; 4791 p->tick = ++process_tick;
4796 pset_status (p, Qfailed); 4792 pset_status (p, Qfailed);
4797 } 4793 }
4798 else
4799 handle_child_signal (SIGCHLD);
4800 } 4794 }
4801#endif /* HAVE_PTYS */ 4795#endif /* HAVE_PTYS */
4802 /* If we can detect process termination, don't consider the 4796 /* If we can detect process termination, don't consider the