diff options
| author | Eli Zaretskii | 2012-11-17 18:46:45 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2012-11-17 18:46:45 +0200 |
| commit | 22bae83fa8c432780fe20202a660aa8c84f3087a (patch) | |
| tree | e58043c1a42681cc2ba63a20c5d85c84a1dbb6ad /src/ChangeLog | |
| parent | a631d0e04747884855aa460cb903d1fd2ff106f4 (diff) | |
| download | emacs-22bae83fa8c432780fe20202a660aa8c84f3087a.tar.gz emacs-22bae83fa8c432780fe20202a660aa8c84f3087a.zip | |
Fix bug #12829 with aborts on MS-Windows when several child processes die.
nt/inc/sys/wait.h: New file, with prototype of waitpid and
definitions of macros it needs.
nt/inc/ms-w32.h (wait): Don't define, 'wait' is not used anymore.
(sys_wait): Remove prototype.
nt/config.nt (HAVE_SYS_WAIT_H): Define to 1.
src/w32proc.c (create_child): Don't clip the PID of the child
process to fit into an Emacs integer, as this is no longer a
restriction.
(waitpid): Rename from sys_wait. Emulate a Posix 'waitpid' by
reaping only the process specified by PID argument, if that is
positive. Use PID instead of dead_child to know which process to
reap. Wait for the child to die only if WNOHANG is not in
OPTIONS.
(sys_select): Don't set dead_child.
src/sysdep.c (wait_for_termination_1): Remove the WINDOWSNT portion,
as it is no longer needed.
src/process.c (waitpid, WUNTRACED) [!WNOHANG]: Remove definitions,
no longer needed.
(record_child_status_change): Remove the setting of
record_at_most_one_child for the !WNOHANG case.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 1194fe099fa..45d48ba41cc 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,23 @@ | |||
| 1 | 2012-11-17 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * w32proc.c (create_child): Don't clip the PID of the child | ||
| 4 | process to fit into an Emacs integer, as this is no longer a | ||
| 5 | restriction. | ||
| 6 | (waitpid): Rename from sys_wait. Emulate a Posix 'waitpid' by | ||
| 7 | reaping only the process specified by PID argument, if that is | ||
| 8 | positive. Use PID instead of dead_child to know which process to | ||
| 9 | reap. Wait for the child to die only if WNOHANG is not in | ||
| 10 | OPTIONS. | ||
| 11 | (sys_select): Don't set dead_child. | ||
| 12 | |||
| 13 | * sysdep.c (wait_for_termination_1): Remove the WINDOWSNT portion, | ||
| 14 | as it is no longer needed. | ||
| 15 | |||
| 16 | * process.c (waitpid, WUNTRACED) [!WNOHANG]: Remove definitions, | ||
| 17 | no longer needed. | ||
| 18 | (record_child_status_change): Remove the setting of | ||
| 19 | record_at_most_one_child for the !WNOHANG case. | ||
| 20 | |||
| 1 | 2012-11-17 Paul Eggert <eggert@cs.ucla.edu> | 21 | 2012-11-17 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 22 | ||
| 3 | Fix problems in ns port found by static checking. | 23 | Fix problems in ns port found by static checking. |