summaryrefslogtreecommitdiffstats
path: root/perl-install/pkgs.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/pkgs.pm')
-rw-r--r--perl-install/pkgs.pm9
1 files changed, 5 insertions, 4 deletions
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index 878e5f8c3..5acd43037 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -665,13 +665,14 @@ sub saveCompssUsers {
my ($prefix, $packages, $compssUsers, $sorted) = @_;
my $flat;
foreach (@$sorted) {
- my %fl;
- $fl{$_} = 1 foreach @{$compssUsers->{$_}{flags}};
+ my @fl = @{$compssUsers->{$_}{flags}};
+ my %fl; $fl{$_} = 1 foreach @fl;
$flat .= $compssUsers->{$_}{verbatim};
foreach my $p (values %{$packages->{names}}) {
my ($rate, @flags) = packageRateRFlags($p);
- $flat .= sprintf "\t%d %s\n", $rate, packageName($p)
- if $rate && !grep { !grep { /^!(.*)/ ? !$fl{$1} : $fl{$_} } split('\|\|') } @flags;
+ if ($rate && grep { grep { !/^!/ && $fl{$_} } split('\|\|') } @flags) {
+ $flat .= sprintf "\t%d %s\n", $rate, packageName($p);
+ }
}
}
output "$prefix/var/lib/urpmi/compssUsers.flat", $flat;