Fix misusage of RLock in timeCache lru.Cache.Get()

This commit is contained in:
auxten 2020-09-13 20:58:28 +08:00
parent 66334f02e8
commit 611ddc10b0

View File

@ -27,7 +27,7 @@ import (
// timeCache stores a time keyed by uid // timeCache stores a time keyed by uid
type timeCache struct { type timeCache struct {
lock sync.RWMutex lock sync.Mutex
cache *lru.Cache cache *lru.Cache
} }
@ -53,8 +53,8 @@ func (c *timeCache) Remove(uid types.UID) {
} }
func (c *timeCache) Get(uid types.UID) (time.Time, bool) { func (c *timeCache) Get(uid types.UID) (time.Time, bool) {
c.lock.RLock() c.lock.Lock()
defer c.lock.RUnlock() defer c.lock.Unlock()
value, ok := c.cache.Get(uid) value, ok := c.cache.Get(uid)
if !ok { if !ok {
return time.Time{}, false return time.Time{}, false