Lines Matching refs:p

32 #define ORIGVFS(p) ((sqlite3_vfs*)((p)->pAppData))  argument
117 static int memdbUnfetch(sqlite3_file*, sqlite3_int64 iOfst, void *p);
128 static void (*memdbDlSym(sqlite3_vfs *pVfs, void *p, const char*zSym))(void);
187 static void memdbEnter(MemStore *p){ in memdbEnter() argument
188 UNUSED_PARAMETER(p); in memdbEnter()
190 static void memdbLeave(MemStore *p){ in memdbLeave() argument
191 UNUSED_PARAMETER(p); in memdbLeave()
194 static void memdbEnter(MemStore *p){ in memdbEnter() argument
195 sqlite3_mutex_enter(p->pMutex); in memdbEnter()
197 static void memdbLeave(MemStore *p){ in memdbLeave() argument
198 sqlite3_mutex_leave(p->pMutex); in memdbLeave()
210 MemStore *p = ((MemFile*)pFile)->pStore; in memdbClose() local
211 if( p->zFName ){ in memdbClose()
218 if( memdb_g.apMemStore[i]==p ){ in memdbClose()
219 memdbEnter(p); in memdbClose()
220 if( p->nRef==1 ){ in memdbClose()
232 memdbEnter(p); in memdbClose()
234 p->nRef--; in memdbClose()
235 if( p->nRef<=0 ){ in memdbClose()
236 if( p->mFlags & SQLITE_DESERIALIZE_FREEONCLOSE ){ in memdbClose()
237 sqlite3_free(p->aData); in memdbClose()
239 memdbLeave(p); in memdbClose()
240 sqlite3_mutex_free(p->pMutex); in memdbClose()
241 sqlite3_free(p); in memdbClose()
243 memdbLeave(p); in memdbClose()
257 MemStore *p = ((MemFile*)pFile)->pStore; in memdbRead() local
258 memdbEnter(p); in memdbRead()
259 if( iOfst+iAmt>p->sz ){ in memdbRead()
261 if( iOfst<p->sz ) memcpy(zBuf, p->aData+iOfst, p->sz - iOfst); in memdbRead()
262 memdbLeave(p); in memdbRead()
265 memcpy(zBuf, p->aData+iOfst, iAmt); in memdbRead()
266 memdbLeave(p); in memdbRead()
273 static int memdbEnlarge(MemStore *p, sqlite3_int64 newSz){ in memdbEnlarge() argument
275 if( (p->mFlags & SQLITE_DESERIALIZE_RESIZEABLE)==0 || NEVER(p->nMmap>0) ){ in memdbEnlarge()
278 if( newSz>p->szMax ){ in memdbEnlarge()
282 if( newSz>p->szMax ) newSz = p->szMax; in memdbEnlarge()
283 pNew = sqlite3Realloc(p->aData, newSz); in memdbEnlarge()
285 p->aData = pNew; in memdbEnlarge()
286 p->szAlloc = newSz; in memdbEnlarge()
299 MemStore *p = ((MemFile*)pFile)->pStore; in memdbWrite() local
300 memdbEnter(p); in memdbWrite()
301 if( NEVER(p->mFlags & SQLITE_DESERIALIZE_READONLY) ){ in memdbWrite()
304 memdbLeave(p); in memdbWrite()
307 if( iOfst+iAmt>p->sz ){ in memdbWrite()
309 if( iOfst+iAmt>p->szAlloc in memdbWrite()
310 && (rc = memdbEnlarge(p, iOfst+iAmt))!=SQLITE_OK in memdbWrite()
312 memdbLeave(p); in memdbWrite()
315 if( iOfst>p->sz ) memset(p->aData+p->sz, 0, iOfst-p->sz); in memdbWrite()
316 p->sz = iOfst+iAmt; in memdbWrite()
318 memcpy(p->aData+iOfst, z, iAmt); in memdbWrite()
319 memdbLeave(p); in memdbWrite()
331 MemStore *p = ((MemFile*)pFile)->pStore; in memdbTruncate() local
333 memdbEnter(p); in memdbTruncate()
334 if( size>p->sz ){ in memdbTruncate()
338 p->sz = size; in memdbTruncate()
340 memdbLeave(p); in memdbTruncate()
357 MemStore *p = ((MemFile*)pFile)->pStore; in memdbFileSize() local
358 memdbEnter(p); in memdbFileSize()
359 *pSize = p->sz; in memdbFileSize()
360 memdbLeave(p); in memdbFileSize()
369 MemStore *p = pThis->pStore; in memdbLock() local
372 memdbEnter(p); in memdbLock()
374 if( p->mFlags & SQLITE_DESERIALIZE_READONLY ){ in memdbLock()
377 if( p->nWrLock ){ in memdbLock()
380 p->nWrLock = 1; in memdbLock()
385 assert( p->nWrLock==1 ); in memdbLock()
386 p->nWrLock = 0; in memdbLock()
387 }else if( p->nWrLock ){ in memdbLock()
390 p->nRdLock++; in memdbLock()
395 assert( p->nWrLock==1 ); in memdbLock()
396 p->nWrLock = 0; in memdbLock()
398 assert( p->nRdLock>0 ); in memdbLock()
399 p->nRdLock--; in memdbLock()
402 memdbLeave(p); in memdbLock()
422 MemStore *p = ((MemFile*)pFile)->pStore; in memdbFileControl() local
424 memdbEnter(p); in memdbFileControl()
426 *(char**)pArg = sqlite3_mprintf("memdb(%p,%lld)", p->aData, p->sz); in memdbFileControl()
431 if( iLimit<p->sz ){ in memdbFileControl()
433 iLimit = p->szMax; in memdbFileControl()
435 iLimit = p->sz; in memdbFileControl()
438 p->szMax = iLimit; in memdbFileControl()
442 memdbLeave(p); in memdbFileControl()
473 MemStore *p = ((MemFile*)pFile)->pStore; in memdbFetch() local
474 memdbEnter(p); in memdbFetch()
475 if( iOfst+iAmt>p->sz || (p->mFlags & SQLITE_DESERIALIZE_RESIZEABLE)!=0 ){ in memdbFetch()
478 p->nMmap++; in memdbFetch()
479 *pp = (void*)(p->aData + iOfst); in memdbFetch()
481 memdbLeave(p); in memdbFetch()
487 MemStore *p = ((MemFile*)pFile)->pStore; in memdbUnfetch() local
490 memdbEnter(p); in memdbUnfetch()
491 p->nMmap--; in memdbUnfetch()
492 memdbLeave(p); in memdbUnfetch()
507 MemStore *p = 0; in memdbOpen() local
521 p = memdb_g.apMemStore[i]; in memdbOpen()
525 if( p==0 ){ in memdbOpen()
527 p = sqlite3Malloc( sizeof(*p) + szName + 3 ); in memdbOpen()
528 if( p==0 ){ in memdbOpen()
535 sqlite3_free(p); in memdbOpen()
539 apNew[memdb_g.nMemStore++] = p; in memdbOpen()
541 memset(p, 0, sizeof(*p)); in memdbOpen()
542 p->mFlags = SQLITE_DESERIALIZE_RESIZEABLE|SQLITE_DESERIALIZE_FREEONCLOSE; in memdbOpen()
543 p->szMax = sqlite3GlobalConfig.mxMemdbSize; in memdbOpen()
544 p->zFName = (char*)&p[1]; in memdbOpen()
545 memcpy(p->zFName, zName, szName+1); in memdbOpen()
546 p->pMutex = sqlite3_mutex_alloc(SQLITE_MUTEX_FAST); in memdbOpen()
547 if( p->pMutex==0 ){ in memdbOpen()
549 sqlite3_free(p); in memdbOpen()
553 p->nRef = 1; in memdbOpen()
554 memdbEnter(p); in memdbOpen()
556 memdbEnter(p); in memdbOpen()
557 p->nRef++; in memdbOpen()
561 p = sqlite3Malloc( sizeof(*p) ); in memdbOpen()
562 if( p==0 ){ in memdbOpen()
565 memset(p, 0, sizeof(*p)); in memdbOpen()
566 p->mFlags = SQLITE_DESERIALIZE_RESIZEABLE | SQLITE_DESERIALIZE_FREEONCLOSE; in memdbOpen()
567 p->szMax = sqlite3GlobalConfig.mxMemdbSize; in memdbOpen()
569 pFile->pStore = p; in memdbOpen()
574 memdbLeave(p); in memdbOpen()
644 static void (*memdbDlSym(sqlite3_vfs *pVfs, void *p, const char *zSym))(void){ in memdbDlSym() argument
645 return ORIGVFS(pVfs)->xDlSym(ORIGVFS(pVfs), p, zSym); in memdbDlSym()
683 static int memdbCurrentTimeInt64(sqlite3_vfs *pVfs, sqlite3_int64 *p){ in memdbCurrentTimeInt64() argument
684 return ORIGVFS(pVfs)->xCurrentTimeInt64(ORIGVFS(pVfs), p); in memdbCurrentTimeInt64()
692 MemFile *p = 0; in memdbFromDbSchema() local
694 int rc = sqlite3_file_control(db, zSchema, SQLITE_FCNTL_FILE_POINTER, &p); in memdbFromDbSchema()
696 if( p->base.pMethods!=&memdb_io_methods ) return 0; in memdbFromDbSchema()
697 pStore = p->pStore; in memdbFromDbSchema()
699 if( pStore->zFName!=0 ) p = 0; in memdbFromDbSchema()
701 return p; in memdbFromDbSchema()
713 MemFile *p; in sqlite3_serialize() local
731 p = memdbFromDbSchema(db, zSchema); in sqlite3_serialize()
735 if( p ){ in sqlite3_serialize()
736 MemStore *pStore = p->pStore; in sqlite3_serialize()
796 MemFile *p; in sqlite3_deserialize() local
834 p = memdbFromDbSchema(db, zSchema); in sqlite3_deserialize()
835 if( p==0 ){ in sqlite3_deserialize()
838 MemStore *pStore = p->pStore; in sqlite3_deserialize()