mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 09:32:25 -05:00 
			
		
		
		
	
					parent
					
						
							
								9a7c8926f5
							
						
					
				
			
			
				commit
				
					
						1de41f64f2
					
				
			
		
					 7 changed files with 50 additions and 6 deletions
				
			
		
							
								
								
									
										3
									
								
								vendor/github.com/ncruces/go-sqlite3/conn.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								vendor/github.com/ncruces/go-sqlite3/conn.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -72,6 +72,9 @@ func newConn(filename string, flags OpenFlag) (conn *Conn, err error) { | |||
| 	c.arena = c.newArena(1024) | ||||
| 	c.ctx = context.WithValue(c.ctx, connKey{}, c) | ||||
| 	c.handle, err = c.openDB(filename, flags) | ||||
| 	if err == nil { | ||||
| 		err = initExtensions(c) | ||||
| 	} | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
|  |  | |||
							
								
								
									
										5
									
								
								vendor/github.com/ncruces/go-sqlite3/func.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/github.com/ncruces/go-sqlite3/func.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -31,8 +31,9 @@ func (c *Conn) CollationNeeded(cb func(db *Conn, name string)) error { | |||
| // | ||||
| // This can be used to load schemas that contain | ||||
| // one or more unknown collating sequences. | ||||
| func (c *Conn) AnyCollationNeeded() { | ||||
| 	c.call("sqlite3_anycollseq_init", uint64(c.handle), 0, 0) | ||||
| func (c Conn) AnyCollationNeeded() error { | ||||
| 	r := c.call("sqlite3_anycollseq_init", uint64(c.handle), 0, 0) | ||||
| 	return c.error(r) | ||||
| } | ||||
| 
 | ||||
| // CreateCollation defines a new collating sequence. | ||||
|  |  | |||
							
								
								
									
										10
									
								
								vendor/github.com/ncruces/go-sqlite3/internal/util/error.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								vendor/github.com/ncruces/go-sqlite3/internal/util/error.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -104,3 +104,13 @@ func ErrorCodeString(rc uint32) string { | |||
| 	} | ||||
| 	return "sqlite3: unknown error" | ||||
| } | ||||
| 
 | ||||
| type ErrorJoiner []error | ||||
| 
 | ||||
| func (j *ErrorJoiner) Join(errs ...error) { | ||||
| 	for _, err := range errs { | ||||
| 		if err != nil { | ||||
| 			*j = append(*j, err) | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  |  | |||
							
								
								
									
										30
									
								
								vendor/github.com/ncruces/go-sqlite3/registry.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								vendor/github.com/ncruces/go-sqlite3/registry.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -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 | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue