[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/process.c,v
From: |
Kim F. Storm |
Subject: |
[Emacs-diffs] Changes to emacs/src/process.c,v |
Date: |
Thu, 29 Mar 2007 21:24:39 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Kim F. Storm <kfstorm> 07/03/29 21:24:38
Index: process.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/process.c,v
retrieving revision 1.509
retrieving revision 1.510
diff -u -b -r1.509 -r1.510
--- process.c 29 Mar 2007 13:55:48 -0000 1.509
+++ process.c 29 Mar 2007 21:24:38 -0000 1.510
@@ -4829,10 +4829,16 @@
get a SIGCHLD).
However, it has been known to happen that the SIGCHLD
- got lost. So raise the signl again just in case.
+ got lost. So raise the signal again just in case.
It can't hurt. */
else if (nread == -1 && errno == EIO)
+ {
+ /* Clear the descriptor now, so we only raise the signal
once. */
+ FD_CLR (channel, &input_wait_mask);
+ FD_CLR (channel, &non_keyboard_wait_mask);
+
kill (getpid (), SIGCHLD);
+ }
#endif /* HAVE_PTYS */
/* If we can detect process termination, don't consider the
process
gone just because its pipe is closed. */
@@ -6514,11 +6520,6 @@
/* Keep trying to get a status until we get a definitive result. */
do
{
- /* For some reason, this sleep() prevents Emacs from sending
- loadavg to 5-8(!) for ~10 seconds.
- See http://thread.gmane.org/gmane.emacs.devel/67722 or
- http://www.google.com/search?q=busyloop+in+sigchld_handler */
- usleep (1000);
errno = 0;
pid = wait3 (&w, WNOHANG | WUNTRACED, 0);
}
- [Emacs-diffs] Changes to emacs/src/process.c,v, (continued)
- [Emacs-diffs] Changes to emacs/src/process.c,v, Kim F. Storm, 2007/03/12
- [Emacs-diffs] Changes to emacs/src/process.c,v, Andreas Schwab, 2007/03/12
- [Emacs-diffs] Changes to emacs/src/process.c,v, Andreas Schwab, 2007/03/12
- [Emacs-diffs] Changes to emacs/src/process.c,v, Chong Yidong, 2007/03/17
- [Emacs-diffs] Changes to emacs/src/process.c,v, Chong Yidong, 2007/03/17
- [Emacs-diffs] Changes to emacs/src/process.c,v, YAMAMOTO Mitsuharu, 2007/03/20
- [Emacs-diffs] Changes to emacs/src/process.c,v, Sam Steingold, 2007/03/24
- [Emacs-diffs] Changes to emacs/src/process.c,v, Sam Steingold, 2007/03/25
- [Emacs-diffs] Changes to emacs/src/process.c,v, Juanma Barranquero, 2007/03/27
- [Emacs-diffs] Changes to emacs/src/process.c,v, Juanma Barranquero, 2007/03/29
- [Emacs-diffs] Changes to emacs/src/process.c,v,
Kim F. Storm <=