sub access_nomdistro () {
my $base = access_basedistro();
- return cfg("dgit-distro.$base.nominal-distro",'RETURN-UNDEF') // $base;
+ my $r = cfg("dgit-distro.$base.nominal-distro",'RETURN-UNDEF') // $base;
+ $r =~ m/^$distro_re$/ or badcfg
+ "bad syntax for (nominal) distro \`$r' (does not match /^$distro_re$/)";
+ return $r;
}
sub access_quirk () {
}
sub parse_dsc_field ($$) {
- my ($f, $what) = @_;
+ my ($dsc, $what) = @_;
+ my $f;
+ foreach my $field (@ourdscfield) {
+ $f = $dsc->{$field};
+ last if defined $f;
+ }
if (!defined $f) {
progress "$what: NO git hash";
} elsif ($f =~ m/^\w+/) {
get_archive_dsc();
if ($dsc) {
- my $f;
- foreach my $field (@ourdscfield) {
- $f = $dsc->{$field};
- last if defined $f;
- }
- parse_dsc_field($f, 'last upload to archive');
+ parse_dsc_field($dsc, 'last upload to archive');
} else {
progress "no version available from the archive";
}
parse_dscdata();
- my $dgit_field = $dsc->{$ourdscfield[0]};
- parse_dsc_field($dgit_field, "$ourdscfield[0] field in .dsc");
+ parse_dsc_field($dsc, "Dgit metadata in .dsc");
if (defined $dsc_hash
&& !forceing [qw(import-dsc-with-dgit-field)]) {