diff options
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | URPM.pm | 2 | ||||
-rw-r--r-- | URPM/Resolve.pm | 9 |
3 files changed, 13 insertions, 0 deletions
@@ -1,4 +1,6 @@ - add traverse_tag_find() +- handle $state->{orphans_to_remove} in selected_size() and + build_transaction_set() Version 3.16 - 26 June 2008, by Pascal "Pixel" Rigaux @@ -840,6 +840,8 @@ B<rejected>: { fullname => { }, } } +B<orphans_to_remove>: [ pkg ] + B<whatrequires>: { name => { id => undef } } # reversed requires_nosense for selected packages diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm index ecc27fb..34ac590 100644 --- a/URPM/Resolve.pm +++ b/URPM/Resolve.pm @@ -1434,6 +1434,10 @@ sub _selected_size_filesize { $size -= $_->{size}; } + foreach (@{$state->{orphans_to_remove} || []}) { + $size -= $_->size; + } + $size, $bad_filesize ? 0 : $filesize; } @@ -1876,6 +1880,11 @@ sub build_transaction_set { }; } + if ($state->{orphans_to_remove}) { + my @l = map { scalar $_->fullname } @{$state->{orphans_to_remove}}; + push @{$state->{transaction}}, { remove => \@l }; + } + $state->{transaction}; } |