summaryrefslogtreecommitdiff
path: root/scripts/dpkg-scansources.pl
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/dpkg-scansources.pl')
-rwxr-xr-xscripts/dpkg-scansources.pl13
1 files changed, 6 insertions, 7 deletions
diff --git a/scripts/dpkg-scansources.pl b/scripts/dpkg-scansources.pl
index ad4483d86..cf1e00082 100755
--- a/scripts/dpkg-scansources.pl
+++ b/scripts/dpkg-scansources.pl
@@ -250,10 +250,9 @@ sub process_dsc {
# Parse ‘.dsc’ file.
open(CDATA, '<', $file) || syserr(_g("cannot open %s"), $file);
- my $fields = parsecdata(\*CDATA,
- sprintf(_g("source control file %s"), $file),
- allow_pgp => 1);
- error(_g("parsing an empty file %s"), $file) unless (defined $fields);
+ my $fields = Dpkg::Control->new(type => CTRL_PKG_SRC);
+ $fields->parse_fh(\*CDATA, sprintf(_g("source control file %s"), $file)) ||
+ error(_g("parsing an empty file %s"), $file);
close(CDATA) || syserr(_g("cannot close %s"), $file);
# Get checksums
@@ -372,9 +371,9 @@ sub main {
next;
}
- tied(%{$fields})->set_field_importance(@src_fields);
+ $fields->set_output_order(@src_fields);
if ($No_sort) {
- tied(%{$fields})->output(\*STDOUT);
+ $fields->output(\*STDOUT);
print "\n";
}
else {
@@ -385,7 +384,7 @@ sub main {
if (@out) {
map {
- tied(%{$_})->output(\*STDOUT);
+ $_->output(\*STDOUT);
print "\n";
} sort {
$a->{Package} cmp $b->{Package}