diff options
-rw-r--r-- | perl-install/pkgs.pm | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm index db0c85780..cb2f70e47 100644 --- a/perl-install/pkgs.pm +++ b/perl-install/pkgs.pm @@ -1383,7 +1383,10 @@ sub install($$$;$$) { } closedir DIR; foreach (keys %tree) { + #- remove child of this process (which will terminate). $pid = $_; while ($pid = $tree{$pid}) { $pid == $$ and push @killpid, $_ } + #- remove child of 1 direct that have a pid greater than current one. + $_ > $$ && $tree{$_} == 1 and push @killpid, $_; } if (@killpid) { log::l("killing process ". join(", ", @killpid)); |