diff options
Diffstat (limited to 'perl-install')
-rw-r--r-- | perl-install/install_steps_gtk.pm | 2 | ||||
-rw-r--r-- | perl-install/pkgs.pm | 9 |
2 files changed, 6 insertions, 5 deletions
diff --git a/perl-install/install_steps_gtk.pm b/perl-install/install_steps_gtk.pm index 24f07388c..8b6e623a2 100644 --- a/perl-install/install_steps_gtk.pm +++ b/perl-install/install_steps_gtk.pm @@ -328,7 +328,7 @@ sub choosePackagesTree { $fl{$_} = 1 foreach @{$o->{compssUsers}{$root}{flags}}; foreach my $p (values %{$packages->{names}}) { my ($rate, @flags) = pkgs::packageRateRFlags($p); - next if !($rate && !grep { !grep { /^!(.*)/ ? !$fl{$1} : $fl{$_} } split('\|\|') } @flags); + next if !($rate && grep { grep { !/^!/ && $fl{$_} } split('\|\|') } @flags); $rate >= 3 ? push(@firstchoice, pkgs::packageName($p)) : push(@others, pkgs::packageName($p)); 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; |