X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FCPANPLUS-Dist-Gentoo.git;a=blobdiff_plain;f=lib%2FCPANPLUS%2FDist%2FGentoo.pm;h=307d802108c903dfda523ba9ce864ef69a7498f3;hp=f44b124fee5a427b5f83afd764b1b98433fa3a5f;hb=4e0c9cad73c65d6c469d35afebbef746ab15ce89;hpb=e8b4c54d60a1bab156b8bc270df2d95327ddd4e1 diff --git a/lib/CPANPLUS/Dist/Gentoo.pm b/lib/CPANPLUS/Dist/Gentoo.pm index f44b124..307d802 100644 --- a/lib/CPANPLUS/Dist/Gentoo.pm +++ b/lib/CPANPLUS/Dist/Gentoo.pm @@ -566,20 +566,17 @@ sub _cpan2portage { "$name-*.ebuild", ) or next; - my @atoms = map CPANPLUS::Dist::Gentoo::Atom->new( - defined $version ? ( - ebuild => $_, - range => '>=', - ) : ( - category => $category, - name => $name, - ), - ), @ebuilds; - - my $atom = reduce { $a < $b ? $b : $a } @atoms; # handles overloading - next if defined $version and $atom < $version; - - return $atom; + my $last = reduce { $a < $b ? $b : $a } # handles overloading + map CPANPLUS::Dist::Gentoo::Atom->new_from_ebuild($_), + @ebuilds; + next if defined $version and $last < $version; + + return CPANPLUS::Dist::Gentoo::Atom->new( + category => $last->category, + name => $last->name, + (defined $version ? (version => $version, range => '>=') : ()), + ebuild => $last->ebuild, + ); } }