hugo

Unnamed repository; edit this file 'description' to name the repository.

git clone git://git.shimmy1996.com/hugo.git
commit fcfa6f33bbebc128a3f9bc3162173bc3780c5f50
parent 77b23fe3db9ff86216887c317249a9a7e990139f
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date:   Thu, 12 Sep 2019 17:24:34 +0200

filecache: Ignore "does not exist" errors in prune

Fixes #6326
Fixes #5745

Diffstat:
Mcache/filecache/filecache_pruner.go | 19+++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/cache/filecache/filecache_pruner.go b/cache/filecache/filecache_pruner.go
@@ -31,12 +31,15 @@ func (c Caches) Prune() (int, error) {
 
 		count, err := cache.Prune(false)
 
+		counter += count
+
 		if err != nil {
+			if os.IsNotExist(err) {
+				continue
+			}
 			return counter, errors.Wrapf(err, "failed to prune cache %q", k)
 		}
 
-		counter += count
-
 	}
 
 	return counter, nil
@@ -68,7 +71,11 @@ func (c *Cache) Prune(force bool) (int, error) {
 			_, err = f.Readdirnames(1)
 			if err == io.EOF {
 				// Empty dir.
-				return c.Fs.Remove(name)
+				err = c.Fs.Remove(name)
+			}
+
+			if err != nil && !os.IsNotExist(err) {
+				return err
 			}
 
 			return nil
@@ -87,7 +94,11 @@ func (c *Cache) Prune(force bool) (int, error) {
 			if err == nil {
 				counter++
 			}
-			return err
+
+			if err != nil && !os.IsNotExist(err) {
+				return err
+			}
+
 		}
 
 		return nil