Jan Dubois wrote:
> 
> I can't reproduce the problem with either build 1006 nor 1007
> (the only 5.10.1 builds of ActivePerl released so far), so I have
> no idea why this is failing for you.
> 
> I checked both Windows XP and Windows 7, FWIW.

I can reproduce it in 5.8 B820.  I run a simple looping perl script that
prints out the pid in one window and try to kill it from another with
the same script (using argv to differentiate which function):

use strict;
use warnings;

# sleep if no argv

if (not @ARGV) {
        print "pid=$$ - going into sleep loop\n";
        while (1) { sleep 5; }
        exit;
}

# else try to kill argv (signal and PID as args)

(my $sig, $pid) = @ARGV;

print "Attempting to kill $sig, $pid\n";
my $ret = kill $sig, $pid;
print "kill returned $ret\n";
exit;

__END__

        Window 1:

<24> p xx.pl
pid=6508 - going into sleep loop

        Window 2:

<472> p xx.pl 0 6508
Attempting to kill 0, 6508      Attempt to test if 6508 is there - good return
kill returned 1

<473> p xx.pl 0 6509            Attempt to kill non-existent 6509 (checked 
taskmaster) and get a good return
Attempting to kill 0, 6509
kill returned 1

<474> p xx.pl 9 6509            Killed 6508 using 6509 as PID and sig of 9 ???
Attempting to kill 9, 6509
kill returned 1

<475> p xx.pl 9 6509            Here we get a proper 0 return when repeating
Attempting to kill 9, 6509
kill returned 0

Strange stuff.

I get similar weird returns from OpenProcess using API.
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to