diff options
author | 2024-07-08 22:03:00 +0200 | |
---|---|---|
committer | 2024-07-08 22:03:00 +0200 | |
commit | 1de41f64f2d75a7fb72579e576e23c9c66c6d8fe (patch) | |
tree | be693d9d82c759c1c8586fadac78cc83d4d51d2e /vendor/github.com/ncruces/go-sqlite3/registry.go | |
parent | [chore/frontend] Put ActivityPub logo on index page (#3087) (diff) | |
download | gotosocial-1de41f64f2d75a7fb72579e576e23c9c66c6d8fe.tar.xz |
[chore] Bump ncruces/go-sqlite3 to 0.17.1 (#3085)
More linkanme fixes.
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/registry.go')
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/registry.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/registry.go b/vendor/github.com/ncruces/go-sqlite3/registry.go new file mode 100644 index 000000000..043d69eeb --- /dev/null +++ b/vendor/github.com/ncruces/go-sqlite3/registry.go @@ -0,0 +1,30 @@ +package sqlite3 + +import "sync" + +var ( + // +checklocks:extRegistryMtx + extRegistry []func(*Conn) error + extRegistryMtx sync.RWMutex +) + +// AutoExtension causes the entryPoint function to be invoked +// for each new database connection that is created. +// +// https://sqlite.org/c3ref/auto_extension.html +func AutoExtension(entryPoint func(*Conn) error) { + extRegistryMtx.Lock() + defer extRegistryMtx.Unlock() + extRegistry = append(extRegistry, entryPoint) +} + +func initExtensions(c *Conn) error { + extRegistryMtx.RLock() + defer extRegistryMtx.RUnlock() + for _, f := range extRegistry { + if err := f(c); err != nil { + return err + } + } + return nil +} |