diff options
Diffstat (limited to 'SBO-Lib/lib')
-rw-r--r-- | SBO-Lib/lib/SBO/Lib.pm | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/SBO-Lib/lib/SBO/Lib.pm b/SBO-Lib/lib/SBO/Lib.pm index f953e7d..79e4acd 100644 --- a/SBO-Lib/lib/SBO/Lib.pm +++ b/SBO-Lib/lib/SBO/Lib.pm @@ -629,19 +629,17 @@ sub get_sbo_version { sub get_available_updates { my @updates; my $pkg_list = get_installed_packages('SBO'); - FIRST: for my $key (keys @$pkg_list) { - my $location = get_sbo_location($$pkg_list[$key]{name}); - # if we can't find a location, assume invalid and skip - next FIRST unless $location; + + for my $pkg (@$pkg_list) { + my $location = get_sbo_location($pkg->{name}); + next unless $location; + my $version = get_sbo_version($location); - if (versioncmp($version, $$pkg_list[$key]{version}) != 0) { - push @updates, { - name => $$pkg_list[$key]{name}, - installed => $$pkg_list[$key]{version}, - update => $version - }; + if (versioncmp($version, $pkg->{version}) != 0) { + push @updates, { name => $pkg->{name}, installed => $pkg->{version}, update => $version }; } } + return \@updates; } |