Commit 207a7ef0 authored by Paul Eggert's avatar Paul Eggert
Browse files

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
parent 19156242
2012-12-17 Paul Eggert <eggert@cs.ucla.edu>
Don't reraise SIGCHLD, as that can now lose (Bug#13192).
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.
2012-12-16 Paul Eggert <eggert@cs.ucla.edu>
 
* sysdep.c (emacs_abort): Bump backtrace size to 40.
......
......@@ -4773,11 +4773,7 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
Therefore, if we get an error reading and errno =
EIO, just continue, because the child process has
exited and should clean itself up soon (e.g. when we
get a SIGCHLD).
However, it has been known to happen that the SIGCHLD
got lost. So raise the signal again just in case.
It can't hurt. */
get a SIGCHLD). */
else if (nread == -1 && errno == EIO)
{
struct Lisp_Process *p = XPROCESS (proc);
......@@ -4795,8 +4791,6 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
p->tick = ++process_tick;
pset_status (p, Qfailed);
}
else
handle_child_signal (SIGCHLD);
}
#endif /* HAVE_PTYS */
/* If we can detect process termination, don't consider the
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment