diff options
author | drh <drh@noemail.net> | 2019-08-16 22:58:29 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-08-16 22:58:29 +0000 |
commit | cc5979dbd384049c1efef847e5cc22082191024b (patch) | |
tree | 6d78eae3ee76266e7869e0fffa568c9a828e9763 /src/sqliteInt.h | |
parent | 4043cfef7590c5a8b90cfbee44b45f6ca8bbf176 (diff) | |
download | sqlite-cc5979dbd384049c1efef847e5cc22082191024b.tar.gz sqlite-cc5979dbd384049c1efef847e5cc22082191024b.zip |
Add the ability to unregister a virtual table module by invoking
sqlite3_create_module() with a NULL sqlite3_module pointer.
FossilOrigin-Name: 31e34fa3390196cdc3178bf120224b08df5ec58fa2c77079ede6e9461a430dad
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 52c982159..07e241a1c 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -1797,6 +1797,7 @@ struct Savepoint { struct Module { const sqlite3_module *pModule; /* Callback pointers */ const char *zName; /* Name passed to create_module() */ + int nRefModule; /* Number of pointers to this object */ void *pAux; /* pAux passed to create_module() */ void (*xDestroy)(void *); /* Module destructor function */ Table *pEpoTab; /* Eponymous table for this module */ @@ -4438,6 +4439,7 @@ void sqlite3AutoLoadExtensions(sqlite3*); # define sqlite3VtabInSync(db) 0 # define sqlite3VtabLock(X) # define sqlite3VtabUnlock(X) +# define sqlite3VtabModuleUnref(D,X) # define sqlite3VtabUnlockList(X) # define sqlite3VtabSavepoint(X, Y, Z) SQLITE_OK # define sqlite3GetVTable(X,Y) ((VTable*)0) @@ -4449,6 +4451,7 @@ void sqlite3AutoLoadExtensions(sqlite3*); int sqlite3VtabCommit(sqlite3 *db); void sqlite3VtabLock(VTable *); void sqlite3VtabUnlock(VTable *); + void sqlite3VtabModuleUnref(sqlite3*,Module*); void sqlite3VtabUnlockList(sqlite3*); int sqlite3VtabSavepoint(sqlite3 *, int, int); void sqlite3VtabImportErrmsg(Vdbe*, sqlite3_vtab*); |