diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2017-07-08 21:13:17 +0200 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2017-09-27 08:42:36 +0100 |
commit | 292c8b3000d71908897bd0d140cbeca470e39741 (patch) | |
tree | 83cb4dc8668b971c8311cf66e315e0e31ac74c6e /TODO | |
parent | dd9f552bb1fee66f3155bbbb81c677def861ada0 (diff) | |
download | busybox-w32-292c8b3000d71908897bd0d140cbeca470e39741.tar.gz busybox-w32-292c8b3000d71908897bd0d140cbeca470e39741.tar.bz2 busybox-w32-292c8b3000d71908897bd0d140cbeca470e39741.zip |
kill: use gentler method than TerminateProcess()
As Git for Windows' source code recently learned, let's also avoid using
TerminateProcess() in BusyBox-w32: it does not allow the killed
processes' atexit() handlers to run.
Instead, jump through a couple of hoops by injecting a remote thread
that executes the ExitProcess() function.
This allows the atexit() handlers to run, at which point the exit code
of the process can already be queried via GetExitCodeProcess(), and
appropriate action can be taken, such as killing child processes.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Diffstat (limited to 'TODO')
0 files changed, 0 insertions, 0 deletions