If find_pid_by_name() had an error, it was returning -1, but storing

that into a pid_t, which is unsigned on a number archs.  Furthermore,
find_pid_by_name() would _never_ return an error if the intended proces
was "init", but instead would return 1, meaning we would fail to work
on 2.4.x kernels running an initrd...
 -Erik
This commit is contained in:
Eric Andersen
2001-12-06 14:52:32 +00:00
parent 06656f363d
commit b24d65659f
7 changed files with 15 additions and 27 deletions

View File

@ -114,7 +114,7 @@ extern int kill_main(int argc, char **argv)
pid_t myPid=getpid();
/* Looks like they want to do a killall. Do that */
while (--argc >= 0) {
pid_t* pidList;
long* pidList;
pidList = find_pid_by_name( *argv);
if (!pidList || *pidList<=0) {