From 1ab4a92f0d6713cd316e46ad9a6b5c7d83ab0417 Mon Sep 17 00:00:00 2001 From: Martin Whitaker Date: Sat, 24 Sep 2022 12:20:17 +0100 Subject: Simplify BuildMedia::create_index(). Code improvement - no functional change. --- lib/MGA/DrakISO/BuildMedia.pm | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/lib/MGA/DrakISO/BuildMedia.pm b/lib/MGA/DrakISO/BuildMedia.pm index b7a377d..ffff043 100644 --- a/lib/MGA/DrakISO/BuildMedia.pm +++ b/lib/MGA/DrakISO/BuildMedia.pm @@ -622,26 +622,24 @@ sub create_index { my $media_dir = $build->get_build_dir('files/' . $arch . '/media/'); my @hdlists = glob("$media_dir/*/media_info/hdlist.cz"); - my @tab; + my %pkgs; my $urpm = URPM->new; foreach (@hdlists) { $urpm->parse_hdlist($_); - $urpm->traverse(sub { - my $pkg = shift; - my $pkgname = $pkg->name; - my $version = $pkg->version; - my $arch = $pkg->arch; - push @tab, "$pkgname-$version ($arch)"; - }); } - - my %hashtab = map { $_ => 1 } @tab; - my @orderedpkgs = sort keys %hashtab; + $urpm->traverse(sub { + my ($pkg) = @_; + my $pkgname = $pkg->name; + my $version = $pkg->version; + my $arch = $pkg->arch; + $pkgs{"$pkgname-$version ($arch)"} = 1; + }); + my @ordered_pkgs = sort keys %pkgs; my $label = $build->{media}{label}; open(my $f, '>', $file); - foreach (@orderedpkgs) { + foreach (@ordered_pkgs) { print $f "$label $_\n"; } close($f); -- cgit v1.2.1