aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsboremove17
1 files changed, 5 insertions, 12 deletions
diff --git a/sboremove b/sboremove
index a7ca086..9622bca 100755
--- a/sboremove
+++ b/sboremove
@@ -13,7 +13,7 @@
use 5.16.0;
use strict;
use warnings FATAL => 'all';
-use SBO::Lib qw/ get_inst_names get_installed_packages get_sbo_location get_build_queue merge_queues get_requires get_readme_contents get_sbo_location show_version /;
+use SBO::Lib qw/ get_inst_names get_installed_packages get_sbo_location get_build_queue merge_queues get_requires get_readme_contents get_sbo_location show_version in /;
use Getopt::Long qw(:config bundling);
use File::Basename;
@@ -80,18 +80,11 @@ my (%required_by, @confirmed);
# populates the required_by hash
sub get_reverse_reqs {
my $installed = shift;
- FIRST: for my $inst (@$installed) {
+ INST: for my $inst (@$installed) {
my $require = get_requires($inst);
- next FIRST unless $$require[0];
- SECOND: for my $req (@$require) {
- unless ( $req eq '%README%' ) {
- THIRD: for my $inst_two (@$installed) {
- if ($req eq $inst_two) {
- push @{$required_by{$req}}, $inst;
- last THIRD;
- }
- }
- }
+ REQ: for my $req (@$require) {
+ next REQ if $req eq '%README%';
+ push @{ $required_by{$req} }, $inst if in($req => @$installed);
}
}
return 1;