chiark / gitweb /
Break out ensuredir and make mkrepotmp use it
[dgit.git] / infra / dgit-repos-server
index 036469e94d5427ecc0eff15f244016e6832d7ab6..e794de25d152d4f421dc9064f1b58ce3670b3f68 100755 (executable)
@@ -234,12 +234,9 @@ sub lockrealtree () {
     locksometree(realdestrepo);
 }
 
-sub mkrepotmp () {
-    my $tmpdir = "$dgitrepos/_tmp";
-    return if mkdir $tmpdir;
-    return if $! == EEXIST;
-    die $!;
-}
+sub mkrepotmp () { ensuredir "$dgitrepos/_tmp" };
+
+sub removedtagsfile () { "$dgitrepos/_removed-tags/$package"; }
 
 sub recorderror ($) {
     my ($why) = @_;
@@ -499,7 +496,7 @@ sub parsetag () {
            while (length) {
                if (s/^distro\=(\S+) //) {
                    die "$1 != $distro" unless $1 eq $distro;
-               } elsif (s/^(--deliberately-$package_re) //) {
+               } elsif (s/^(--deliberately-$deliberately_re) //) {
                    push @deliberatelies, $1;
                } elsif (s/^supersede:(\S+)=(\w+) //) {
                    die "supersede $1 twice" if defined $supersedes{$1};
@@ -680,7 +677,7 @@ sub checktagnoreplay () {
     my @problems;
 
     git_for_each_tag_referring($onlyreferring, sub {
-       my ($objid,$fullrefname,$tagname) = @_;
+       my ($objid,$refobjid,$fullrefname,$tagname) = @_;
        printdebug "checktagnoreplay - overwriting $fullrefname=$objid\n";
        my $supers = $supersedes{$fullrefname};
        if (!defined $supers) {