We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 2d52e1a commit b3aab73Copy full SHA for b3aab73
cache.go
@@ -17,7 +17,7 @@ var SelectorCacheMaxEntries = 50
17
var (
18
cacheOnce sync.Once
19
cache *lru.Cache
20
- cacheMutex sync.RWMutex
+ cacheMutex sync.Mutex
21
)
22
23
func getQuery(expr string) (*xpath.Expr, error) {
@@ -27,14 +27,11 @@ func getQuery(expr string) (*xpath.Expr, error) {
27
cacheOnce.Do(func() {
28
cache = lru.New(SelectorCacheMaxEntries)
29
})
30
- cacheMutex.RLock()
+ cacheMutex.Lock()
31
+ defer cacheMutex.Unlock()
32
if v, ok := cache.Get(expr); ok {
- cacheMutex.RUnlock()
33
return v.(*xpath.Expr), nil
34
}
35
36
- cacheMutex.Lock()
37
- defer cacheMutex.Unlock()
38
v, err := xpath.Compile(expr)
39
if err != nil {
40
return nil, err
0 commit comments