mirror of
https://github.com/mirror/make.git
synced 2025-03-03 14:20:54 +08:00
[SV 50021] Avoid infloop on MS-Windows with short scripts
* job.c (reap_children) [WINDOWS32]: Avoid recursive call to reap_children when the argument passed to map_windows32_error_to_string is negative or too large.
This commit is contained in:
parent
d351c1fef2
commit
a95cb30ab5
9
job.c
9
job.c
@ -774,9 +774,12 @@ reap_children (int block, int err)
|
||||
/* get exit data */
|
||||
exit_code = process_exit_code (hPID);
|
||||
|
||||
if (werr)
|
||||
fprintf (stderr, "make (e=%d): %s", exit_code,
|
||||
map_windows32_error_to_string (exit_code));
|
||||
/* the extra tests of exit_code are here to prevent
|
||||
map_windows32_error_to_string from calling 'fatal',
|
||||
which will then call reap_children again */
|
||||
if (werr && exit_code > 0 && exit_code < WSABASEERR)
|
||||
fprintf (stderr, "make (e=%d): %s", exit_code,
|
||||
map_windows32_error_to_string (exit_code));
|
||||
|
||||
/* signal */
|
||||
exit_sig = process_signal (hPID);
|
||||
|
Loading…
Reference in New Issue
Block a user