Lines Matching refs:pVTab
94 void sqlite3VtabLock(VTable *pVTab){
95 pVTab->nRef++;
115 void sqlite3VtabUnlock(VTable *pVTab){
116 sqlite3 *db = pVTab->db;
119 assert( pVTab->nRef>0 );
122 pVTab->nRef--;
123 if( pVTab->nRef==0 ){
124 sqlite3_vtab *p = pVTab->pVtab;
128 sqlite3DbFree(db, pVTab);
456 assert( !db->pVTab );
458 db->pVTab = pTab;
477 if( db->pVTab ){
525 db->pVTab = 0;
568 ** Add the virtual table pVTab to the array sqlite3.aVTrans[].
570 static int addToVTrans(sqlite3 *db, VTable *pVTab){
586 db->aVTrans[db->nVTrans++] = pVTab;
587 sqlite3VtabLock(pVTab);
645 pTab = db->pVTab;
673 db->pVTab = 0;
736 VTable *pVTab = db->aVTrans[i];
737 sqlite3_vtab *p = pVTab->pVtab;
743 sqlite3VtabUnlock(pVTab);
805 int sqlite3VtabBegin(sqlite3 *db, VTable *pVTab){
817 if( !pVTab ){
820 pModule = pVTab->pVtab->pModule;
828 if( db->aVTrans[i]==pVTab ){
834 rc = pModule->xBegin(pVTab->pVtab);
836 rc = addToVTrans(db, pVTab);