diff options
-rw-r--r-- | lib/scanner/walk.go | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/lib/scanner/walk.go b/lib/scanner/walk.go index 5112f1e87..81dce7f59 100644 --- a/lib/scanner/walk.go +++ b/lib/scanner/walk.go @@ -255,11 +255,14 @@ func (w *walker) createFSWalkFn(ctx context.Context, fsChan chan<- fsWalkResult) skip = fs.SkipDir } - if path == "." { - if err != nil { - fsWalkError(ctx, fsChan, path, err) - return skip + if err != nil { + if sendErr := fsWalkError(ctx, fsChan, path, err); sendErr != nil { + return sendErr } + return skip + } + + if path == "." { return nil } @@ -282,13 +285,6 @@ func (w *walker) createFSWalkFn(ctx context.Context, fsChan chan<- fsWalkResult) return skip } - if err != nil { - if sendErr := fsWalkError(ctx, fsChan, path, err); sendErr != nil { - return sendErr - } - return skip - } - if !utf8.ValidString(path) { if err := fsWalkError(ctx, fsChan, path, errors.New("path isn't a valid utf8 string")); err != nil { return err |