prysm-pulse/tools/analyzers/recursivelock/testdata/nonrlocks.go
Nishant Das 1774188a17
Fix Certain Edge Cases With the Analyzer (#10164)
* fix analyzer

* fix other deadlock

Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2022-02-02 14:11:31 +00:00

15 lines
506 B
Go

// These are all non recursive rlocks. Testing to make sure there are no false positives
package testdata
func (resource *ProtectResource) NestedRLockWithDefer() string {
resource.RLock()
defer resource.RUnlock()
return resource.GetResource() // want `found recursive read lock call`
}
func (resource *NestedProtectResource) NonNestedRLockDifferentRLocks() {
resource.RLock()
resource.GetNestedPResource() // get nested resource uses RLock, but at a deeper level in the struct
resource.RUnlock()
}