summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2006-11-27 15:54:12 +0000
committerPascal Rigaux <pixel@mandriva.com>2006-11-27 15:54:12 +0000
commit9701d8f7510aa29d36ca770cf8738d17b7845dbd (patch)
treedb44d295a28d4420e16d84bf32ce73005a2b8ac7
parent24e3c1e07445f6e424526776025ac120aa03b4c0 (diff)
downloadurpmi-9701d8f7510aa29d36ca770cf8738d17b7845dbd.tar
urpmi-9701d8f7510aa29d36ca770cf8738d17b7845dbd.tar.gz
urpmi-9701d8f7510aa29d36ca770cf8738d17b7845dbd.tar.bz2
urpmi-9701d8f7510aa29d36ca770cf8738d17b7845dbd.tar.xz
urpmi-9701d8f7510aa29d36ca770cf8738d17b7845dbd.zip
when parsing virtual media, do check for new missing provides, those may come
from non virtual media
-rw-r--r--urpm/media.pm12
1 files changed, 7 insertions, 5 deletions
diff --git a/urpm/media.pm b/urpm/media.pm
index 6f4db07a..d1cf21ff 100644
--- a/urpm/media.pm
+++ b/urpm/media.pm
@@ -1543,6 +1543,8 @@ sub _update_medium_first_pass {
may_reconfig_urpmi($urpm, $medium);
}
+ my @unresolved_before = grep { ! defined $urpm->{provides}{$_} } keys %{$urpm->{provides} || {}};
+
{
my $rc =
file_from_local_url($medium->{url})
@@ -1568,7 +1570,6 @@ sub _update_medium_first_pass {
#- is larger than 1MB, this is probably an hdlist else a synthesis.
#- anyway, if one tries fails, try another mode.
$options{callback} and $options{callback}('parse', $medium->{name});
- my @unresolved_before = grep { ! defined $urpm->{provides}{$_} } keys %{$urpm->{provides} || {}};
#- if it looks like a hdlist, try to parse as hdlist first
delete $medium->{synthesis} if file_size(cachedir_hdlist($urpm, $medium)) > 262144;
@@ -1591,13 +1592,14 @@ sub _update_medium_first_pass {
unlink statedir_list($urpm, $medium);
delete $medium->{list};
- {
- my @unresolved_after = grep { ! defined $urpm->{provides}{$_} } keys %{$urpm->{provides} || {}};
- @unresolved_before == @unresolved_after or $$need_second_pass = 1;
- }
}
}
+ {
+ my @unresolved_after = grep { ! defined $urpm->{provides}{$_} } keys %{$urpm->{provides} || {}};
+ @unresolved_before == @unresolved_after or $$need_second_pass = 1;
+ }
+
unless ($medium->{virtual}) {
#- make sure to rebuild base files and clear medium modified state.
$medium->{modified} = 0;