diff options
Diffstat (limited to 'infra')
-rwxr-xr-x | infra/dgit-repos-server | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/infra/dgit-repos-server b/infra/dgit-repos-server index 21a8024..361fa4a 100755 --- a/infra/dgit-repos-server +++ b/infra/dgit-repos-server @@ -572,13 +572,10 @@ sub readtag () { $!=0; $_=<T>; defined or die $!; } -sub parsetag_general ($$;$) { - my ($mainfn, $dgititemfn, $need_distro) = @_; +sub parsetag_general ($;$) { + my ($dgititemfn, $need_distro) = @_; printdebug " parsetag...\n"; - readtag(); - $mainfn->(); - my $copyl = $_; for (;;) { print PT $copyl or die $!; @@ -615,13 +612,14 @@ sub parsetag_general ($$;$) { } sub parsetag () { + readtag(); + m/^($package_re) release (\S+) for \S+ \((\S+)\) \[dgit\]$/ or + reject "tag message not in expected format"; + die unless $1 eq $package; + $version = $2; + die "$3 != $suite " unless $3 eq $suite; + parsetag_general sub { - m/^($package_re) release (\S+) for \S+ \((\S+)\) \[dgit\]$/ or - reject "tag message not in expected format"; - die unless $1 eq $package; - $version = $2; - die "$3 != $suite " unless $3 eq $suite; - }, sub { if (s/^(--deliberately-$deliberately_re) //) { push @deliberatelies, $1; } elsif (s/^previously:(\S+)=(\w+) //) { |