summaryrefslogtreecommitdiff
path: root/vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2024-08-15 00:30:58 +0000
committerLibravatar GitHub <noreply@github.com>2024-08-15 00:30:58 +0000
commit586639ccf0e2fefbd1da2c59d5abcb8d64d37434 (patch)
tree52a9d7412e98ef406c39f09a6fad6e3fa7a7ad49 /vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go
parentupdate go-ffmpreg to v0.2.5 (pulls in latest tetratelabs/wazero) (#3203) (diff)
downloadgotosocial-586639ccf0e2fefbd1da2c59d5abcb8d64d37434.tar.xz
update go-sqlite3 to v0.18.0 (#3204)
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go')
-rw-r--r--vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go19
1 files changed, 10 insertions, 9 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go b/vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go
index ffeb3e0a0..65674ed2e 100644
--- a/vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go
+++ b/vendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go
@@ -72,28 +72,28 @@ func (s *vfsShm) Close() error {
return nil
}
- // Unlock everything.
- s.shmLock(0, _SHM_NLOCK, _SHM_UNLOCK)
-
vfsShmFilesMtx.Lock()
defer vfsShmFilesMtx.Unlock()
+ // Unlock everything.
+ s.shmLock(0, _SHM_NLOCK, _SHM_UNLOCK)
+
// Decrease reference count.
if s.vfsShmFile.refs > 1 {
s.vfsShmFile.refs--
s.vfsShmFile = nil
return nil
}
+
+ err := s.File.Close()
for i, g := range vfsShmFiles {
if g == s.vfsShmFile {
vfsShmFiles[i] = nil
- break
+ s.vfsShmFile = nil
+ return err
}
}
-
- err := s.File.Close()
- s.vfsShmFile = nil
- return err
+ panic(util.AssertErr())
}
func (s *vfsShm) shmOpen() (rc _ErrorCode) {
@@ -234,6 +234,8 @@ func (s *vfsShm) shmLock(offset, n int32, flags _ShmFlag) _ErrorCode {
s.vfsShmFile.lock[i] = -1
s.lock[i] = true
}
+ default:
+ panic(util.AssertErr())
}
return _OK
@@ -256,5 +258,4 @@ func (s *vfsShm) shmUnmap(delete bool) {
os.Remove(s.path)
}
s.Close()
- s.vfsShmFile = nil
}