summaryrefslogtreecommitdiff
path: root/vendor/github.com/ncruces/go-sqlite3/vfs/memdb
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/vfs/memdb')
-rw-r--r--vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go22
1 files changed, 9 insertions, 13 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go b/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go
index d313b45d1..686f8e9a7 100644
--- a/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go
+++ b/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go
@@ -78,19 +78,15 @@ type memDB struct {
// +checklocks:dataMtx
data []*[sectorSize]byte
-
// +checklocks:dataMtx
size int64
- // +checklocks:lockMtx
- shared int32
- // +checklocks:lockMtx
- reserved bool
- // +checklocks:lockMtx
- pending bool
-
// +checklocks:memoryMtx
- refs int
+ refs int32
+
+ shared int32 // +checklocks:lockMtx
+ pending bool // +checklocks:lockMtx
+ reserved bool // +checklocks:lockMtx
lockMtx sync.Mutex
dataMtx sync.RWMutex
@@ -253,12 +249,12 @@ func (m *memFile) Unlock(lock vfs.LockLevel) error {
m.lockMtx.Lock()
defer m.lockMtx.Unlock()
- if m.pending && m.lock >= vfs.LOCK_PENDING {
- m.pending = false
- }
- if m.reserved && m.lock >= vfs.LOCK_RESERVED {
+ if m.lock >= vfs.LOCK_RESERVED {
m.reserved = false
}
+ if m.lock >= vfs.LOCK_PENDING {
+ m.pending = false
+ }
if lock < vfs.LOCK_SHARED {
m.shared--
}