diff options
Diffstat (limited to 'vendor/gitea.com/macaron/session/file.go')
-rw-r--r-- | vendor/gitea.com/macaron/session/file.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/vendor/gitea.com/macaron/session/file.go b/vendor/gitea.com/macaron/session/file.go index 3e575564ee..ce915344fb 100644 --- a/vendor/gitea.com/macaron/session/file.go +++ b/vendor/gitea.com/macaron/session/file.go @@ -133,7 +133,15 @@ func (p *FileProvider) Read(sid string) (_ RawStore, err error) { defer p.lock.RUnlock() var f *os.File + ok := false if com.IsFile(filename) { + modTime, err := com.FileMTime(filename) + if err != nil { + return nil, err + } + ok = (modTime + p.maxlifetime) >= time.Now().Unix() + } + if ok { f, err = os.OpenFile(filename, os.O_RDONLY, 0600) } else { f, err = os.Create(filename) |