@@ -33,7 +33,6 @@ typedef struct vectorVtab vectorVtab;
33
33
struct vectorVtab {
34
34
sqlite3_vtab base ; /* Base class - must be first */
35
35
sqlite3 * db ; /* Database connection */
36
- char * zDbSName ; /* Database schema name */
37
36
};
38
37
39
38
typedef struct vectorVtab_cursor vectorVtab_cursor ;
@@ -59,7 +58,6 @@ static int vectorVtabConnect(
59
58
sqlite3_vtab * * ppVtab ,
60
59
char * * pzErr
61
60
){
62
- char * zDbSName = NULL ;
63
61
vectorVtab * pVtab = NULL ;
64
62
int rc ;
65
63
/*
@@ -74,21 +72,17 @@ static int vectorVtabConnect(
74
72
if ( pVtab == NULL ){
75
73
return SQLITE_NOMEM_BKPT ;
76
74
}
77
- zDbSName = sqlite3DbStrDup (db , argv [1 ]); // argv[1] is the database schema name by spec (see https://www.sqlite.org/vtab.html#the_xcreate_method)
78
- if ( zDbSName == NULL ){
79
- sqlite3_free (pVtab );
80
- return SQLITE_NOMEM_BKPT ;
81
- }
75
+ // > Eponymous virtual tables exist in the "main" schema only, so they will not work if prefixed with a different schema name.
76
+ // so, argv[1] always equal to "main" and we can safely ignore it
77
+ // (see https://www.sqlite.org/vtab.html#epovtab)
82
78
memset (pVtab , 0 , sizeof (* pVtab ));
83
79
pVtab -> db = db ;
84
- pVtab -> zDbSName = zDbSName ;
85
80
* ppVtab = (sqlite3_vtab * )pVtab ;
86
81
return SQLITE_OK ;
87
82
}
88
83
89
84
static int vectorVtabDisconnect (sqlite3_vtab * pVtab ){
90
85
vectorVtab * pVTab = (vectorVtab * )pVtab ;
91
- sqlite3DbFree (pVTab -> db , pVTab -> zDbSName );
92
86
sqlite3_free (pVtab );
93
87
return SQLITE_OK ;
94
88
}
@@ -155,7 +149,7 @@ static int vectorVtabFilter(
155
149
pCur -> rows .aIntValues = NULL ;
156
150
pCur -> rows .ppValues = NULL ;
157
151
158
- if ( vectorIndexSearch (pVTab -> db , pVTab -> zDbSName , argc , argv , & pCur -> rows , & pCur -> nReads , & pCur -> nWrites , & pVTab -> base .zErrMsg ) != 0 ){
152
+ if ( vectorIndexSearch (pVTab -> db , argc , argv , & pCur -> rows , & pCur -> nReads , & pCur -> nWrites , & pVTab -> base .zErrMsg ) != 0 ){
159
153
return SQLITE_ERROR ;
160
154
}
161
155
0 commit comments