lintian: r1033 - trunk/checks
Author: rra
Date: 2007-12-04 06:25:34 +0100 (Tue, 04 Dec 2007)
New Revision: 1033
Modified:
trunk/checks/fields
Log:
Parse and stash the parsed dependency field while reading them. This
doesn't make much difference currently but may be useful later. (Done
as part of a change that I ended up doing another way.)
Modified: trunk/checks/fields
===================================================================
--- trunk/checks/fields 2007-12-04 04:37:21 UTC (rev 1032)
+++ trunk/checks/fields 2007-12-04 05:25:34 UTC (rev 1033)
@@ -375,7 +375,7 @@
close IN;
}
if (($type eq "binary") || ($type eq 'udeb')) {
- my (%deps, %fields);
+ my (%deps, %fields, %parsed);
for my $field (qw(depends pre-depends recommends suggests conflicts provides replaces)) {
if (open(FH, '<', "fields/$field")) {
#Get data and clean it
@@ -383,6 +383,7 @@
unfold($field, \$data);
$data =~ s/^\s*(.+?)\s*$/$1/;
$fields{$field} = $data;
+ $parsed{$field} = Dep::parse ($data);
my (@seen_libstdcs, @seen_tcls, @seen_tclxs, @seen_tks, @seen_tkxs, @seen_libpngs);
@@ -484,11 +485,10 @@
# dependency fields.
if ($fields{conflicts}) {
for my $field (qw(depends pre-depends recommends suggests)) {
- next unless $fields{$field};
- my $depend = Dep::parse($fields{$field});
+ next unless $parsed{$field};
for my $conflict (split /\s*,\s*/, $fields{conflicts}) {
tag "conflicts-with-dependency", $conflict
- if Dep::implies($depend, Dep::parse($conflict));
+ if Dep::implies($parsed{$field}, Dep::parse($conflict));
}
}
}
@@ -497,7 +497,7 @@
my $d_pkg = $deps{$d_pkg_name};
if (scalar @$d_pkg > 1) {
#Allow things like Depends: package1 (>= 1.3), package1 (<= 5.2)
- unless ((scalar @$d_pkg == 2) &&
+ unless ((scalar @$d_pkg == 2) &&
(($d_pkg->[0]->[1]->[0] =~ />=|>>|>/ && $d_pkg->[1]->[1]->[0] =~ /<=|<<|</) or
($d_pkg->[0]->[1]->[0] =~ /<=|<<|</ && $d_pkg->[1]->[1]->[0] =~ />=|>>|>/))) {
my @relations;
Reply to: