chiark / gitweb /
git-cache-proxy: Tolerate failure to write gc stamp
authorIan Jackson <ian.jackson@eu.citrix.com>
Tue, 11 Feb 2020 19:11:48 +0000 (19:11 +0000)
committerIan Jackson <ian.jackson@eu.citrix.com>
Tue, 11 Feb 2020 19:11:48 +0000 (19:11 +0000)
This can happen if the directory no longer exists.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
scripts/git-cache-proxy

index 35ce5ff5754e97737a6c22efa773153d68a28827..762cacb38830cc6c58b04591b9be7dd95662189e 100755 (executable)
@@ -307,8 +307,11 @@ sub readcommand () {
 sub update_gcstamp ($) {
     my ($gitdir) = (@_);
     my $gcdone = "$gitdir/cache-proxy-gc.stamp";
-    open GCSTAMP, '>', $gcdone or fail "create $gcdone: $!";
-    close GCSTAMP;
+    if (open GCSTAMP, '>', $gcdone) {
+       close GCSTAMP;
+    } else {
+       $!==ENOENT or fail "create $gcdone: $!";
+    }
 }
 
 sub clonefetch () {