X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=infra%2Fdgit-repos-server;h=d2f94f1957e0bed922a0db052e2a81b921fa789a;hp=5599061de2a68cb8e997c66f2d81e48c489688a9;hb=8afbacc6da4ad5ccaf931d113df175bef22cc7b1;hpb=5408b0c227d942af55442389894a9ed7338a55ce;ds=sidebyside diff --git a/infra/dgit-repos-server b/infra/dgit-repos-server index 5599061d..d2f94f19 100755 --- a/infra/dgit-repos-server +++ b/infra/dgit-repos-server @@ -124,10 +124,7 @@ sub acquirelock ($$) { debug " locking $lock failed"; return undef; } - if (!stat $lock) { - next if $! == ENOENT; - die "stat $lock: $!"; - } + next unless stat_exists $lock; my $want = (stat _)[1]; stat $fh or die $!; my $got = (stat _)[1]; @@ -267,10 +264,7 @@ END sub dealwithfreshrepo () { my $freshrepo = "${workrepo}_fresh"; - if (!stat $freshrepo) { - $!==ENOENT or die "$freshrepo $!"; - return; - } + return unless stat_exists $freshrepo; $destrepo = $freshrepo; } @@ -596,8 +590,7 @@ sub stunthook () { sub fixmissing__git_upload_pack () { $destrepo = "$dgitrepos/_empty"; my $lfh = acquiretree($destrepo,1); - return if stat $destrepo; - die $! unless $!==ENOENT; + return if stat_exists $destrepo; rmtree "$destrepo.new"; mkemptyrepo "$destrepo.new", "0644"; rename "$destrepo.new", $destrepo or die $!; @@ -686,10 +679,9 @@ sub parseargsdispatch () { } close $pollock or die $!; - if (stat $realdestrepo) { + if (stat_exists $realdestrepo) { $destrepo = $realdestrepo; } else { - $! == ENOENT or die "stat dest repo $destrepo: $!"; debug " fixmissing $funcn"; my $fixfunc = $main::{"fixmissing__$funcn"}; &$fixfunc;