fixed open file leak
This commit is contained in:
parent
960511586f
commit
9af837a17c
1 changed files with 3 additions and 0 deletions
|
|
@ -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)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue