diff --git a/pkg/fs/fs.go b/pkg/fs/fs.go index 932ca2d..742a215 100644 --- a/pkg/fs/fs.go +++ b/pkg/fs/fs.go @@ -84,6 +84,7 @@ func (fs *FS) StatWithOffline(name string) (fi stdfs.FileInfo, offline bool, err return } fi, err = f.Stat() + f.Close() offline = f.offline return } @@ -131,11 +132,13 @@ func (fs *FS) open(name string, stat bool) (f *File, err error) { } sfi, err := sf.Stat() if err != nil { + sf.Close() log.Error(err, "error stat source file") return } if sfi.IsDir() || stat { if empty, err := dirEmpty(sf.Name()); empty && err == nil { + sf.Close() sf, err = os.Open(dp) offline = true log.V(2).Info("dir offline mode", "path", dp)