diff options
Diffstat (limited to 'SBO-Lib/lib')
-rw-r--r-- | SBO-Lib/lib/SBO/Lib.pm | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/SBO-Lib/lib/SBO/Lib.pm b/SBO-Lib/lib/SBO/Lib.pm index 83fbe3c..da67c22 100644 --- a/SBO-Lib/lib/SBO/Lib.pm +++ b/SBO-Lib/lib/SBO/Lib.pm @@ -260,16 +260,17 @@ sub get_installed_packages($) { my $regex = qr#/([^/]+)-([^-]+)-[^-]+-([^-]+)$#; for my $path (<$pkg_db/*>) { - my ($name, $version, $build) = ($path =~ $regex)[0,1,2]; - # valid types: STD, SBO - my $type = 'STD'; - if ($build =~ m/_SBo(|compat32)$/) { - my $sbo = $name; - $sbo =~ s/-compat32//g if $name =~ /-compat32$/; - $type = 'SBO' if get_sbo_location($sbo); - } - if ($filter eq $type or $filter eq 'ALL') { - push @installed, {name => $name, version => $version}; + if (my ($name, $version, $build) = ($path =~ $regex)[0,1,2]) { + # valid types: STD, SBO + my $type = 'STD'; + if ($build =~ m/_SBo(|compat32)$/) { + my $sbo = $name; + $sbo =~ s/-compat32//g if $name =~ /-compat32$/; + $type = 'SBO' if get_sbo_location($sbo); + } + if ($filter eq $type or $filter eq 'ALL') { + push @installed, {name => $name, version => $version}; + } } } return \@installed; |