As found and reported to the MSYS team back in 2006 by Howard Chu, if a
native process is spawned, control-C, the kill command, etc, may not
actually kill the process. Details are here:
<http://mingw.5.n7.nabble.com/Re-Ctrl-Break-handler-td28010.html>
as well as here:
<https://sourceforge.net/p/mingw/bugs/1783/>
Given that there is now 64-bit windows, the issue would be a bit more
complex to resolve, as an updated patch would need to query first to see if
the target process is 32-bit or 64-bit, and then a 64-bit version of the
patch needs to be created.
The inability to properly kill such a spawned process can lead to things
like the dreaded "Device or resource busy" error, since the process that is
using the related file has actually never terminated.
It's fairly trivial to reproduce this in the OpenLDAP test suite,
particularly test001, which spawns a slapd process, kills it, then spawns
another slapd process, which will fail because the original slapd never
actually got killed.
Regards,
Quanah
--
Quanah Gibson-Mount
Product Architect
Symas Corporation
Packaged, certified, and supported LDAP solutions powered by OpenLDAP:
<http://www.symas.com>
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple