summaryrefslogtreecommitdiffstats
path: root/urpm.pm
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2002-03-05 10:30:21 +0000
committerFrancois Pons <fpons@mandriva.com>2002-03-05 10:30:21 +0000
commit2833aedf6c7d231991198415d05d0d86b683b122 (patch)
treef08761fe5337e8a3c8f6cc815cf460c0af3332d0 /urpm.pm
parent4c5598e096528596bd9830c0206ba8ab2b0a6322 (diff)
downloadurpmi-2833aedf6c7d231991198415d05d0d86b683b122.tar
urpmi-2833aedf6c7d231991198415d05d0d86b683b122.tar.gz
urpmi-2833aedf6c7d231991198415d05d0d86b683b122.tar.bz2
urpmi-2833aedf6c7d231991198415d05d0d86b683b122.tar.xz
urpmi-2833aedf6c7d231991198415d05d0d86b683b122.zip
3.3-19mdk
Diffstat (limited to 'urpm.pm')
-rw-r--r--urpm.pm15
1 files changed, 6 insertions, 9 deletions
diff --git a/urpm.pm b/urpm.pm
index 81b529a6..6d14a840 100644
--- a/urpm.pm
+++ b/urpm.pm
@@ -1407,7 +1407,7 @@ sub search_packages {
sub parse_synthesis {
my ($urpm, $medium, %options) = @_;
local (*F, $_);
- my ($error, $last_name, @founds, %info);
+ my ($error, @founds, %info);
#- check with provides that version and release are matching else ignore safely.
#- simply ignore src rpm, which does not have any provides.
@@ -1474,17 +1474,14 @@ sub parse_synthesis {
while (<F>) {
chomp;
my ($name, $tag, @data) = split '@';
- if ($name ne $last_name) {
- !%info || $update_info->() or
- $urpm->{log}(_("unable to analyse synthesis data of %s",
- $last_name =~ /^[[:print:]]*$/ ? $last_name : _("<non printable chars>")));
- $last_name = $name;
+
+ $info{$tag} = \@data;
+ if ($tag eq 'info' || $tag eq 'name') {
+ $update_info->() or $urpm->{log}(_("unable to analyse synthesis data of %s",
+ $name =~ /^[[:print:]]*$/ ? $name : _("<non printable chars>")));
%info = ();
}
- $info{$tag} = \@data;
}
- !%info || $update_info->() or $urpm->{log}(_("unable to analyse synthesis data of %s", $last_name));
- close F or $urpm->{error}(_("unable to parse correctly [%s]", $filename)), return;
$urpm->{log}(_("read synthesis file [%s]", $filename));
@founds;