aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2017-08-29 18:13:44 +0300
committerEli Zaretskii2017-08-29 18:13:44 +0300
commitbf0045d7a4cd4c7d4df3fa34b8a12795e8ee73aa (patch)
tree193a5d0f31488bd09a4439d8ea4f5bbc0a7e4783 /src
parentb65cb981cce96eeae3690ffddac6f3ebe314036c (diff)
downloademacs-bf0045d7a4cd4c7d4df3fa34b8a12795e8ee73aa.tar.gz
emacs-bf0045d7a4cd4c7d4df3fa34b8a12795e8ee73aa.zip
Avoid aborting in 'waitpid' on MS-Windows
* src/w32proc.c (waitpid): Don't allow quitting if called with WNOHANG in OPTIONS. (Bug#28268)
Diffstat (limited to 'src')
-rw-r--r--src/w32proc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/w32proc.c b/src/w32proc.c
index 76af55f9985..ffd5f0d0a1a 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -1449,7 +1449,11 @@ waitpid (pid_t pid, int *status, int options)
1449 1449
1450 do 1450 do
1451 { 1451 {
1452 maybe_quit (); 1452 /* When child_status_changed calls us with WNOHANG in OPTIONS,
1453 we are supposed to be non-interruptible, so don't allow
1454 quitting in that case. */
1455 if (!dont_wait)
1456 maybe_quit ();
1453 active = WaitForMultipleObjects (nh, wait_hnd, FALSE, timeout_ms); 1457 active = WaitForMultipleObjects (nh, wait_hnd, FALSE, timeout_ms);
1454 } while (active == WAIT_TIMEOUT && !dont_wait); 1458 } while (active == WAIT_TIMEOUT && !dont_wait);
1455 1459