diff options
author | Francois Pons <fpons@mandriva.com> | 2002-03-05 10:30:21 +0000 |
---|---|---|
committer | Francois Pons <fpons@mandriva.com> | 2002-03-05 10:30:21 +0000 |
commit | 2833aedf6c7d231991198415d05d0d86b683b122 (patch) | |
tree | f08761fe5337e8a3c8f6cc815cf460c0af3332d0 /urpm.pm | |
parent | 4c5598e096528596bd9830c0206ba8ab2b0a6322 (diff) | |
download | urpmi-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.pm | 15 |
1 files changed, 6 insertions, 9 deletions
@@ -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; |