From 278d30bcebf884ef9ca488e3649e4d34a84fb5f2 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Sat, 20 Apr 2019 13:22:11 +0200 Subject: [PATCH] bump tonistiigi/fsutil 2862f6bc5ac9b97124e552a5c108230b38a1b0ca - tonistiigi/fsutil#54 walker: allow enotdir as enoent Signed-off-by: Sebastiaan van Stijn --- vendor.conf | 2 +- vendor/github.com/tonistiigi/fsutil/walker.go | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/vendor.conf b/vendor.conf index 85365724c5..45ba524a6c 100755 --- a/vendor.conf +++ b/vendor.conf @@ -76,7 +76,7 @@ github.com/spf13/cobra v0.0.3 github.com/spf13/pflag 4cb166e4f25ac4e8016a3595bbf7ea2e9aa85a2c https://github.com/thaJeztah/pflag.git github.com/syndtr/gocapability 2c00daeb6c3b45114c80ac44119e7b8801fdd852 github.com/theupdateframework/notary v0.6.1 -github.com/tonistiigi/fsutil f567071bed2416e4d87d260d3162722651182317 +github.com/tonistiigi/fsutil 2862f6bc5ac9b97124e552a5c108230b38a1b0ca github.com/tonistiigi/units 6950e57a87eaf136bbe44ef2ec8e75b9e3569de2 github.com/xeipuuv/gojsonpointer 4e3ac2762d5f479393488629ee9370b50873b3a6 github.com/xeipuuv/gojsonreference bd5ef7bd5415a7ac448318e64f11a24cd21e594b diff --git a/vendor/github.com/tonistiigi/fsutil/walker.go b/vendor/github.com/tonistiigi/fsutil/walker.go index 39e6c94047..d78340dfe6 100644 --- a/vendor/github.com/tonistiigi/fsutil/walker.go +++ b/vendor/github.com/tonistiigi/fsutil/walker.go @@ -5,6 +5,7 @@ import ( "os" "path/filepath" "strings" + "syscall" "time" "github.com/docker/docker/pkg/fileutils" @@ -71,7 +72,7 @@ func Walk(ctx context.Context, p string, opt *WalkOpt, fn filepath.WalkFunc) err return err } defer func() { - if retErr != nil && os.IsNotExist(errors.Cause(retErr)) { + if retErr != nil && isNotExist(retErr) { retErr = filepath.SkipDir } }() @@ -216,3 +217,14 @@ func trimUntilIndex(str, sep string, count int) string { } } } + +func isNotExist(err error) bool { + err = errors.Cause(err) + if os.IsNotExist(err) { + return true + } + if pe, ok := err.(*os.PathError); ok { + err = pe.Err + } + return err == syscall.ENOTDIR +}