From 9af837a17c8f9b8be68ec01b6bedb599d1e9bce1 Mon Sep 17 00:00:00 2001 From: ston1th Date: Mon, 14 Mar 2022 00:12:56 +0100 Subject: [PATCH] fixed open file leak --- pkg/fs/fs.go | 3 +++ 1 file changed, 3 insertions(+) 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)