On Mon, 05 Apr 2010, Jan Dubois wrote: > On Mon, 05 Apr 2010, Bill Luebkert wrote: > > I can reproduce it in 5.8 B820. > > Yes, I can do that too, but it is not very interesting as the Changelog > already explains that kill(0, $pid) was broken in 820 and fixed in 822 > (821 was an HP-UX specific build): > > http://docs.activestate.com/activeperl/5.8/changes.html#build_822_wednesday__aug_1__2007
Looking more closely shows that the bug fix got lost before the actual 822 release again. 823 was a non-public release, so kill(0, $pid) wasn't really fixed until build 824. > [...] > > > I get similar weird returns from OpenProcess using API. > > Could you elaborate on that? Just to explain the problem in earlier Perl versions: the bug was introduced by some refactoring to support kill(-$signal, $pid) on Windows to send a signal too all processes in a process tree. That resulted in checking the return value of OpenProcess() against INVALID_HANDLE_VALUE, which is the normal Win32 in-band error value. OpenProcess() however is not following that convention and returns NULL as the error value (which technically is a valid HANDLE value, except OpenProcess() cannot return the pid of the "System Idle Process" pseudo-process anyways). Cheers, -Jan _______________________________________________ ActivePerl mailing list [email protected] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
