aboutsummaryrefslogtreecommitdiffstats
path: root/URPM
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2007-10-01 14:48:15 +0000
committerPascal Rigaux <pixel@mandriva.com>2007-10-01 14:48:15 +0000
commit0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6 (patch)
tree02dc74c8d7cd857a308cce747e6e73cf74c40d6d /URPM
parent17ff96dccc9d76fc552990fe40492fb5df1bde12 (diff)
downloadperl-URPM-0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6.tar
perl-URPM-0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6.tar.gz
perl-URPM-0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6.tar.bz2
perl-URPM-0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6.tar.xz
perl-URPM-0b0b77c2f6e5068b4d7a03ac2a518e5a8c8475e6.zip
- don't resolve suggested virtual packages if already installed (#34376)
Diffstat (limited to 'URPM')
-rw-r--r--URPM/Resolve.pm8
1 files changed, 8 insertions, 0 deletions
diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm
index 85d4bff..23656a0 100644
--- a/URPM/Resolve.pm
+++ b/URPM/Resolve.pm
@@ -705,6 +705,14 @@ sub resolve_requested {
delete $suggests{$_} foreach $p->suggests;
});
+ # workaround: if you do "urpmi virtual_pkg" and one virtual_pkg is already installed,
+ # it will ask anyway for the other choices
+ foreach my $suggest (keys %suggests) {
+ $db->traverse_tag('whatprovides', [ $suggest ], sub {
+ delete $suggests{$suggest};
+ });
+ }
+
%suggests or next;
$urpm->{debug_URPM}("requested " . join(', ', keys %suggests) . " suggested by " . $pkg->fullname) if $urpm->{debug_URPM};