pPage 10358 ext/sqlite3/libsqlite/sqlite3.c sqlite3_pcache_page *pPage; /* Pcache object page handle */ pPage 10425 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE PgHdr *sqlite3PcacheFetchFinish(PCache*, Pgno, sqlite3_pcache_page *pPage); pPage 12797 ext/sqlite3/libsqlite/sqlite3.c void *pPage; /* Page cache memory */ pPage 20709 ext/sqlite3/libsqlite/sqlite3.c if( sqlite3GlobalConfig.pPage==0 || sqlite3GlobalConfig.szPage<512 pPage 20711 ext/sqlite3/libsqlite/sqlite3.c sqlite3GlobalConfig.pPage = 0; pPage 39300 ext/sqlite3/libsqlite/sqlite3.c static void pcacheManageDirtyList(PgHdr *pPage, u8 addRemove){ pPage 39301 ext/sqlite3/libsqlite/sqlite3.c PCache *p = pPage->pCache; pPage 39304 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pDirtyNext || pPage==p->pDirtyTail ); pPage 39305 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pDirtyPrev || pPage==p->pDirty ); pPage 39308 ext/sqlite3/libsqlite/sqlite3.c if( p->pSynced==pPage ){ pPage 39309 ext/sqlite3/libsqlite/sqlite3.c PgHdr *pSynced = pPage->pDirtyPrev; pPage 39316 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pDirtyNext ){ pPage 39317 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyNext->pDirtyPrev = pPage->pDirtyPrev; pPage 39319 ext/sqlite3/libsqlite/sqlite3.c assert( pPage==p->pDirtyTail ); pPage 39320 ext/sqlite3/libsqlite/sqlite3.c p->pDirtyTail = pPage->pDirtyPrev; pPage 39322 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pDirtyPrev ){ pPage 39323 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyPrev->pDirtyNext = pPage->pDirtyNext; pPage 39325 ext/sqlite3/libsqlite/sqlite3.c assert( pPage==p->pDirty ); pPage 39326 ext/sqlite3/libsqlite/sqlite3.c p->pDirty = pPage->pDirtyNext; pPage 39332 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyNext = 0; pPage 39333 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyPrev = 0; pPage 39336 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pDirtyNext==0 && pPage->pDirtyPrev==0 && p->pDirty!=pPage ); pPage 39338 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyNext = p->pDirty; pPage 39339 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pDirtyNext ){ pPage 39340 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pDirtyNext->pDirtyPrev==0 ); pPage 39341 ext/sqlite3/libsqlite/sqlite3.c pPage->pDirtyNext->pDirtyPrev = pPage; pPage 39343 ext/sqlite3/libsqlite/sqlite3.c p->pDirtyTail = pPage; pPage 39349 ext/sqlite3/libsqlite/sqlite3.c p->pDirty = pPage; pPage 39350 ext/sqlite3/libsqlite/sqlite3.c if( !p->pSynced && 0==(pPage->flags&PGHDR_NEED_SYNC) ){ pPage 39351 ext/sqlite3/libsqlite/sqlite3.c p->pSynced = pPage; pPage 39365 ext/sqlite3/libsqlite/sqlite3.c sqlite3GlobalConfig.pcache2.xUnpin(p->pCache->pCache, p->pPage, 0); pPage 39576 ext/sqlite3/libsqlite/sqlite3.c sqlite3_pcache_page *pPage /* Page obtained by prior PcacheFetch() call */ pPage 39579 ext/sqlite3/libsqlite/sqlite3.c assert( pPage!=0 ); pPage 39580 ext/sqlite3/libsqlite/sqlite3.c pPgHdr = (PgHdr*)pPage->pExtra; pPage 39581 ext/sqlite3/libsqlite/sqlite3.c assert( pPgHdr->pPage==0 ); pPage 39583 ext/sqlite3/libsqlite/sqlite3.c pPgHdr->pPage = pPage; pPage 39584 ext/sqlite3/libsqlite/sqlite3.c pPgHdr->pData = pPage->pBuf; pPage 39589 ext/sqlite3/libsqlite/sqlite3.c return sqlite3PcacheFetchFinish(pCache,pgno,pPage); pPage 39601 ext/sqlite3/libsqlite/sqlite3.c sqlite3_pcache_page *pPage /* Page obtained by prior PcacheFetch() call */ pPage 39605 ext/sqlite3/libsqlite/sqlite3.c if( pPage==0 ) return 0; pPage 39606 ext/sqlite3/libsqlite/sqlite3.c pPgHdr = (PgHdr *)pPage->pExtra; pPage 39608 ext/sqlite3/libsqlite/sqlite3.c if( !pPgHdr->pPage ){ pPage 39609 ext/sqlite3/libsqlite/sqlite3.c return pcacheFetchFinishWithInit(pCache, pgno, pPage); pPage 39661 ext/sqlite3/libsqlite/sqlite3.c sqlite3GlobalConfig.pcache2.xUnpin(p->pCache->pCache, p->pPage, 1); pPage 39719 ext/sqlite3/libsqlite/sqlite3.c sqlite3GlobalConfig.pcache2.xRekey(pCache->pCache, p->pPage, p->pgno,newPgno); pPage 40331 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage; pPage 40333 ext/sqlite3/libsqlite/sqlite3.c while( (pPage = pNext)!=0 ){ pPage 40334 ext/sqlite3/libsqlite/sqlite3.c unsigned int h = pPage->iKey % nNew; pPage 40335 ext/sqlite3/libsqlite/sqlite3.c pNext = pPage->pNext; pPage 40336 ext/sqlite3/libsqlite/sqlite3.c pPage->pNext = apNew[h]; pPage 40337 ext/sqlite3/libsqlite/sqlite3.c apNew[h] = pPage; pPage 40353 ext/sqlite3/libsqlite/sqlite3.c static void pcache1PinPage(PgHdr1 *pPage){ pPage 40357 ext/sqlite3/libsqlite/sqlite3.c assert( pPage!=0 ); pPage 40358 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isPinned==0 ); pPage 40359 ext/sqlite3/libsqlite/sqlite3.c pCache = pPage->pCache; pPage 40361 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pLruNext || pPage==pGroup->pLruTail ); pPage 40362 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pLruPrev || pPage==pGroup->pLruHead ); pPage 40364 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pLruPrev ){ pPage 40365 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruPrev->pLruNext = pPage->pLruNext; pPage 40367 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage->pLruNext; pPage 40369 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pLruNext ){ pPage 40370 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruNext->pLruPrev = pPage->pLruPrev; pPage 40372 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruTail = pPage->pLruPrev; pPage 40374 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruNext = 0; pPage 40375 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruPrev = 0; pPage 40376 ext/sqlite3/libsqlite/sqlite3.c pPage->isPinned = 1; pPage 40387 ext/sqlite3/libsqlite/sqlite3.c static void pcache1RemoveFromHash(PgHdr1 *pPage){ pPage 40389 ext/sqlite3/libsqlite/sqlite3.c PCache1 *pCache = pPage->pCache; pPage 40393 ext/sqlite3/libsqlite/sqlite3.c h = pPage->iKey % pCache->nHash; pPage 40394 ext/sqlite3/libsqlite/sqlite3.c for(pp=&pCache->apHash[h]; (*pp)!=pPage; pp=&(*pp)->pNext); pPage 40432 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage; pPage 40433 ext/sqlite3/libsqlite/sqlite3.c while( (pPage = *pp)!=0 ){ pPage 40434 ext/sqlite3/libsqlite/sqlite3.c if( pPage->iKey>=iLimit ){ pPage 40436 ext/sqlite3/libsqlite/sqlite3.c *pp = pPage->pNext; pPage 40437 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->isPinned ) pcache1PinPage(pPage); pPage 40438 ext/sqlite3/libsqlite/sqlite3.c pcache1FreePage(pPage); pPage 40440 ext/sqlite3/libsqlite/sqlite3.c pp = &pPage->pNext; pPage 40607 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage = 0; pPage 40632 ext/sqlite3/libsqlite/sqlite3.c pPage = pGroup->pLruTail; pPage 40633 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isPinned==0 ); pPage 40634 ext/sqlite3/libsqlite/sqlite3.c pcache1RemoveFromHash(pPage); pPage 40635 ext/sqlite3/libsqlite/sqlite3.c pcache1PinPage(pPage); pPage 40636 ext/sqlite3/libsqlite/sqlite3.c pOther = pPage->pCache; pPage 40646 ext/sqlite3/libsqlite/sqlite3.c pcache1FreePage(pPage); pPage 40647 ext/sqlite3/libsqlite/sqlite3.c pPage = 0; pPage 40656 ext/sqlite3/libsqlite/sqlite3.c if( !pPage ){ pPage 40658 ext/sqlite3/libsqlite/sqlite3.c pPage = pcache1AllocPage(pCache); pPage 40662 ext/sqlite3/libsqlite/sqlite3.c if( pPage ){ pPage 40665 ext/sqlite3/libsqlite/sqlite3.c pPage->iKey = iKey; pPage 40666 ext/sqlite3/libsqlite/sqlite3.c pPage->pNext = pCache->apHash[h]; pPage 40667 ext/sqlite3/libsqlite/sqlite3.c pPage->pCache = pCache; pPage 40668 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruPrev = 0; pPage 40669 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruNext = 0; pPage 40670 ext/sqlite3/libsqlite/sqlite3.c pPage->isPinned = 1; pPage 40671 ext/sqlite3/libsqlite/sqlite3.c *(void **)pPage->page.pExtra = 0; pPage 40672 ext/sqlite3/libsqlite/sqlite3.c pCache->apHash[h] = pPage; pPage 40677 ext/sqlite3/libsqlite/sqlite3.c return pPage; pPage 40740 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage = 0; pPage 40751 ext/sqlite3/libsqlite/sqlite3.c pPage = pCache->apHash[iKey % pCache->nHash]; pPage 40752 ext/sqlite3/libsqlite/sqlite3.c while( pPage && pPage->iKey!=iKey ){ pPage = pPage->pNext; } pPage 40755 ext/sqlite3/libsqlite/sqlite3.c if( pPage ){ pPage 40756 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->isPinned ) pcache1PinPage(pPage); pPage 40759 ext/sqlite3/libsqlite/sqlite3.c pPage = pcache1FetchStage2(pCache, iKey, createFlag); pPage 40761 ext/sqlite3/libsqlite/sqlite3.c assert( pPage==0 || pCache->iMaxKey>=iKey ); pPage 40763 ext/sqlite3/libsqlite/sqlite3.c return (sqlite3_pcache_page*)pPage; pPage 40778 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage = (PgHdr1 *)pPg; pPage 40781 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pCache==pCache ); pPage 40787 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pLruPrev==0 && pPage->pLruNext==0 ); pPage 40788 ext/sqlite3/libsqlite/sqlite3.c assert( pGroup->pLruHead!=pPage && pGroup->pLruTail!=pPage ); pPage 40789 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isPinned==1 ); pPage 40792 ext/sqlite3/libsqlite/sqlite3.c pcache1RemoveFromHash(pPage); pPage 40793 ext/sqlite3/libsqlite/sqlite3.c pcache1FreePage(pPage); pPage 40797 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead->pLruPrev = pPage; pPage 40798 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruNext = pGroup->pLruHead; pPage 40799 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage; pPage 40801 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruTail = pPage; pPage 40802 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage; pPage 40805 ext/sqlite3/libsqlite/sqlite3.c pPage->isPinned = 0; pPage 40821 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *pPage = (PgHdr1 *)pPg; pPage 40824 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->iKey==iOld ); pPage 40825 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pCache==pCache ); pPage 40831 ext/sqlite3/libsqlite/sqlite3.c while( (*pp)!=pPage ){ pPage 40834 ext/sqlite3/libsqlite/sqlite3.c *pp = pPage->pNext; pPage 40837 ext/sqlite3/libsqlite/sqlite3.c pPage->iKey = iNew; pPage 40838 ext/sqlite3/libsqlite/sqlite3.c pPage->pNext = pCache->apHash[h]; pPage 40839 ext/sqlite3/libsqlite/sqlite3.c pCache->apHash[h] = pPage; pPage 42818 ext/sqlite3/libsqlite/sqlite3.c static u32 pager_pagehash(PgHdr *pPage){ pPage 42819 ext/sqlite3/libsqlite/sqlite3.c return pager_datahash(pPage->pPager->pageSize, (unsigned char *)pPage->pData); pPage 42821 ext/sqlite3/libsqlite/sqlite3.c static void pager_set_pagehash(PgHdr *pPage){ pPage 42822 ext/sqlite3/libsqlite/sqlite3.c pPage->pageHash = pager_pagehash(pPage); pPage 45546 ext/sqlite3/libsqlite/sqlite3.c assert( p->pPage==0 ); pPage 47073 ext/sqlite3/libsqlite/sqlite3.c sqlite3_pcache_page *pPage; pPage 47077 ext/sqlite3/libsqlite/sqlite3.c pPage = sqlite3PcacheFetch(pPager->pPCache, pgno, 0); pPage 47078 ext/sqlite3/libsqlite/sqlite3.c assert( pPage==0 || pPager->hasBeenUsed ); pPage 47079 ext/sqlite3/libsqlite/sqlite3.c return sqlite3PcacheFetchFinish(pPager->pPCache, pgno, pPage); pPage 47464 ext/sqlite3/libsqlite/sqlite3.c PgHdr *pPage; pPage 47467 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3PagerGet(pPager, pg, &pPage); pPage 47469 ext/sqlite3/libsqlite/sqlite3.c rc = pager_write(pPage); pPage 47470 ext/sqlite3/libsqlite/sqlite3.c if( pPage->flags&PGHDR_NEED_SYNC ){ pPage 47473 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerUnrefNotNull(pPage); pPage 47476 ext/sqlite3/libsqlite/sqlite3.c }else if( (pPage = sqlite3PagerLookup(pPager, pg))!=0 ){ pPage 47477 ext/sqlite3/libsqlite/sqlite3.c if( pPage->flags&PGHDR_NEED_SYNC ){ pPage 47480 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerUnrefNotNull(pPage); pPage 47493 ext/sqlite3/libsqlite/sqlite3.c PgHdr *pPage = sqlite3PagerLookup(pPager, pg1+ii); pPage 47494 ext/sqlite3/libsqlite/sqlite3.c if( pPage ){ pPage 47495 ext/sqlite3/libsqlite/sqlite3.c pPage->flags |= PGHDR_NEED_SYNC; pPage 47496 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerUnrefNotNull(pPage); pPage 48051 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerPageRefcount(DbPage *pPage){ pPage 48052 ext/sqlite3/libsqlite/sqlite3.c return sqlite3PcachePageRefcount(pPage); pPage 51644 ext/sqlite3/libsqlite/sqlite3.c PgHdr *pPage, /* The page of the frame to be written */ pPage 51652 ext/sqlite3/libsqlite/sqlite3.c if( (pData = sqlite3PagerCodec(pPage))==0 ) return SQLITE_NOMEM; pPage 51654 ext/sqlite3/libsqlite/sqlite3.c pData = pPage->pData; pPage 51656 ext/sqlite3/libsqlite/sqlite3.c walEncodeFrame(p->pWal, pPage->pgno, nTruncate, pData, aFrame); pPage 53493 ext/sqlite3/libsqlite/sqlite3.c static void releasePage(MemPage *pPage); /* Forward reference */ pPage 54017 ext/sqlite3/libsqlite/sqlite3.c static u8 *findOverflowCell(MemPage *pPage, int iCell){ pPage 54019 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54020 ext/sqlite3/libsqlite/sqlite3.c for(i=pPage->nOverflow-1; i>=0; i--){ pPage 54022 ext/sqlite3/libsqlite/sqlite3.c k = pPage->aiOvfl[i]; pPage 54025 ext/sqlite3/libsqlite/sqlite3.c return pPage->apOvfl[i]; pPage 54030 ext/sqlite3/libsqlite/sqlite3.c return findCell(pPage, iCell); pPage 54040 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage, /* Page containing the cell */ pPage 54047 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54048 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->leaf==0 || pPage->leaf==1 ); pPage 54049 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKeyLeaf ){ pPage 54050 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->childPtrSize==0 ); pPage 54053 ext/sqlite3/libsqlite/sqlite3.c }else if( pPage->noPayload ){ pPage 54054 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->childPtrSize==4 ); pPage 54062 ext/sqlite3/libsqlite/sqlite3.c pIter = pCell + pPage->childPtrSize; pPage 54068 ext/sqlite3/libsqlite/sqlite3.c testcase( nPayload==pPage->maxLocal ); pPage 54069 ext/sqlite3/libsqlite/sqlite3.c testcase( nPayload==pPage->maxLocal+1 ); pPage 54070 ext/sqlite3/libsqlite/sqlite3.c if( nPayload<=pPage->maxLocal ){ pPage 54092 ext/sqlite3/libsqlite/sqlite3.c minLocal = pPage->minLocal; pPage 54093 ext/sqlite3/libsqlite/sqlite3.c maxLocal = pPage->maxLocal; pPage 54094 ext/sqlite3/libsqlite/sqlite3.c surplus = minLocal + (nPayload - minLocal)%(pPage->pBt->usableSize - 4); pPage 54107 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage, /* Page containing the cell */ pPage 54111 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, findCell(pPage, iCell), pInfo); pPage 54120 ext/sqlite3/libsqlite/sqlite3.c static u16 cellSizePtr(MemPage *pPage, u8 *pCell){ pPage 54121 ext/sqlite3/libsqlite/sqlite3.c u8 *pIter = pCell + pPage->childPtrSize; /* For looping over bytes of pCell */ pPage 54131 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &debuginfo); pPage 54134 ext/sqlite3/libsqlite/sqlite3.c if( pPage->noPayload ){ pPage 54137 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->childPtrSize==4 ); pPage 54149 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKey ){ pPage 54156 ext/sqlite3/libsqlite/sqlite3.c testcase( nSize==pPage->maxLocal ); pPage 54157 ext/sqlite3/libsqlite/sqlite3.c testcase( nSize==pPage->maxLocal+1 ); pPage 54158 ext/sqlite3/libsqlite/sqlite3.c if( nSize<=pPage->maxLocal ){ pPage 54162 ext/sqlite3/libsqlite/sqlite3.c int minLocal = pPage->minLocal; pPage 54163 ext/sqlite3/libsqlite/sqlite3.c nSize = minLocal + (nSize - minLocal) % (pPage->pBt->usableSize - 4); pPage 54164 ext/sqlite3/libsqlite/sqlite3.c testcase( nSize==pPage->maxLocal ); pPage 54165 ext/sqlite3/libsqlite/sqlite3.c testcase( nSize==pPage->maxLocal+1 ); pPage 54166 ext/sqlite3/libsqlite/sqlite3.c if( nSize>pPage->maxLocal ){ pPage 54178 ext/sqlite3/libsqlite/sqlite3.c static u16 cellSize(MemPage *pPage, int iCell){ pPage 54179 ext/sqlite3/libsqlite/sqlite3.c return cellSizePtr(pPage, findCell(pPage, iCell)); pPage 54189 ext/sqlite3/libsqlite/sqlite3.c static void ptrmapPutOvflPtr(MemPage *pPage, u8 *pCell, int *pRC){ pPage 54193 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &info); pPage 54196 ext/sqlite3/libsqlite/sqlite3.c ptrmapPut(pPage->pBt, ovfl, PTRMAP_OVERFLOW1, pPage->pgno, pRC); pPage 54213 ext/sqlite3/libsqlite/sqlite3.c static int defragmentPage(MemPage *pPage){ pPage 54229 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 54230 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt!=0 ); pPage 54231 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt->usableSize <= SQLITE_MAX_PAGE_SIZE ); pPage 54232 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nOverflow==0 ); pPage 54233 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54235 ext/sqlite3/libsqlite/sqlite3.c src = data = pPage->aData; pPage 54236 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 54237 ext/sqlite3/libsqlite/sqlite3.c cellOffset = pPage->cellOffset; pPage 54238 ext/sqlite3/libsqlite/sqlite3.c nCell = pPage->nCell; pPage 54240 ext/sqlite3/libsqlite/sqlite3.c usableSize = pPage->pBt->usableSize; pPage 54259 ext/sqlite3/libsqlite/sqlite3.c size = cellSizePtr(pPage, &src[pc]); pPage 54277 ext/sqlite3/libsqlite/sqlite3.c temp = sqlite3PagerTempSpace(pPage->pBt->pPager); pPage 54290 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 54291 ext/sqlite3/libsqlite/sqlite3.c if( cbrk-iCellFirst!=pPage->nFree ){ pPage 54373 ext/sqlite3/libsqlite/sqlite3.c static int allocateSpace(MemPage *pPage, int nByte, int *pIdx){ pPage 54374 ext/sqlite3/libsqlite/sqlite3.c const int hdr = pPage->hdrOffset; /* Local cache of pPage->hdrOffset */ pPage 54375 ext/sqlite3/libsqlite/sqlite3.c u8 * const data = pPage->aData; /* Local cache of pPage->aData */ pPage 54380 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 54381 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt ); pPage 54382 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54384 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nFree>=nByte ); pPage 54385 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nOverflow==0 ); pPage 54386 ext/sqlite3/libsqlite/sqlite3.c assert( nByte < (int)(pPage->pBt->usableSize-8) ); pPage 54388 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->cellOffset == hdr + 12 - 4*pPage->leaf ); pPage 54389 ext/sqlite3/libsqlite/sqlite3.c gap = pPage->cellOffset + 2*pPage->nCell; pPage 54408 ext/sqlite3/libsqlite/sqlite3.c u8 *pSpace = pageFindSlot(pPage, nByte, &rc, &bDefrag); pPage 54424 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nCell>0 || CORRUPT_DB ); pPage 54425 ext/sqlite3/libsqlite/sqlite3.c rc = defragmentPage(pPage); pPage 54440 ext/sqlite3/libsqlite/sqlite3.c assert( top+nByte <= (int)pPage->pBt->usableSize ); pPage 54458 ext/sqlite3/libsqlite/sqlite3.c static int freeSpace(MemPage *pPage, u16 iStart, u16 iSize){ pPage 54464 ext/sqlite3/libsqlite/sqlite3.c u32 iLast = pPage->pBt->usableSize-4; /* Largest possible freeblock offset */ pPage 54466 ext/sqlite3/libsqlite/sqlite3.c unsigned char *data = pPage->aData; /* Page content */ pPage 54468 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt!=0 ); pPage 54469 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 54470 ext/sqlite3/libsqlite/sqlite3.c assert( iStart>=pPage->hdrOffset+6+pPage->childPtrSize ); pPage 54471 ext/sqlite3/libsqlite/sqlite3.c assert( CORRUPT_DB || iEnd <= pPage->pBt->usableSize ); pPage 54472 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54478 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pBt->btsFlags & BTS_SECURE_DELETE ){ pPage 54485 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 54540 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree += iOrigSize; pPage 54556 ext/sqlite3/libsqlite/sqlite3.c static int decodeFlags(MemPage *pPage, int flagByte){ pPage 54559 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->hdrOffset==(pPage->pgno==1 ? 100 : 0) ); pPage 54560 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54561 ext/sqlite3/libsqlite/sqlite3.c pPage->leaf = (u8)(flagByte>>3); assert( PTF_LEAF == 1<<3 ); pPage 54563 ext/sqlite3/libsqlite/sqlite3.c pPage->childPtrSize = 4-4*pPage->leaf; pPage 54564 ext/sqlite3/libsqlite/sqlite3.c pBt = pPage->pBt; pPage 54572 ext/sqlite3/libsqlite/sqlite3.c pPage->intKey = 1; pPage 54573 ext/sqlite3/libsqlite/sqlite3.c pPage->intKeyLeaf = pPage->leaf; pPage 54574 ext/sqlite3/libsqlite/sqlite3.c pPage->noPayload = !pPage->leaf; pPage 54575 ext/sqlite3/libsqlite/sqlite3.c pPage->maxLocal = pBt->maxLeaf; pPage 54576 ext/sqlite3/libsqlite/sqlite3.c pPage->minLocal = pBt->minLeaf; pPage 54584 ext/sqlite3/libsqlite/sqlite3.c pPage->intKey = 0; pPage 54585 ext/sqlite3/libsqlite/sqlite3.c pPage->intKeyLeaf = 0; pPage 54586 ext/sqlite3/libsqlite/sqlite3.c pPage->noPayload = 0; pPage 54587 ext/sqlite3/libsqlite/sqlite3.c pPage->maxLocal = pBt->maxLocal; pPage 54588 ext/sqlite3/libsqlite/sqlite3.c pPage->minLocal = pBt->minLocal; pPage 54594 ext/sqlite3/libsqlite/sqlite3.c pPage->max1bytePayload = pBt->max1bytePayload; pPage 54607 ext/sqlite3/libsqlite/sqlite3.c static int btreeInitPage(MemPage *pPage){ pPage 54609 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt!=0 ); pPage 54610 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54611 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pgno==sqlite3PagerPagenumber(pPage->pDbPage) ); pPage 54612 ext/sqlite3/libsqlite/sqlite3.c assert( pPage == sqlite3PagerGetExtra(pPage->pDbPage) ); pPage 54613 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->aData == sqlite3PagerGetData(pPage->pDbPage) ); pPage 54615 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->isInit ){ pPage 54627 ext/sqlite3/libsqlite/sqlite3.c pBt = pPage->pBt; pPage 54629 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 54630 ext/sqlite3/libsqlite/sqlite3.c data = pPage->aData; pPage 54633 ext/sqlite3/libsqlite/sqlite3.c if( decodeFlags(pPage, data[hdr]) ) return SQLITE_CORRUPT_BKPT; pPage 54635 ext/sqlite3/libsqlite/sqlite3.c pPage->maskPage = (u16)(pBt->pageSize - 1); pPage 54636 ext/sqlite3/libsqlite/sqlite3.c pPage->nOverflow = 0; pPage 54638 ext/sqlite3/libsqlite/sqlite3.c pPage->cellOffset = cellOffset = hdr + 8 + pPage->childPtrSize; pPage 54639 ext/sqlite3/libsqlite/sqlite3.c pPage->aDataEnd = &data[usableSize]; pPage 54640 ext/sqlite3/libsqlite/sqlite3.c pPage->aCellIdx = &data[cellOffset]; pPage 54647 ext/sqlite3/libsqlite/sqlite3.c pPage->nCell = get2byte(&data[hdr+3]); pPage 54648 ext/sqlite3/libsqlite/sqlite3.c if( pPage->nCell>MX_CELL(pBt) ){ pPage 54652 ext/sqlite3/libsqlite/sqlite3.c testcase( pPage->nCell==MX_CELL(pBt) ); pPage 54657 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nCell>0 || top==usableSize || CORRUPT_DB ); pPage 54666 ext/sqlite3/libsqlite/sqlite3.c iCellFirst = cellOffset + 2*pPage->nCell; pPage 54673 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ) iCellLast--; pPage 54674 ext/sqlite3/libsqlite/sqlite3.c for(i=0; i<pPage->nCell; i++){ pPage 54681 ext/sqlite3/libsqlite/sqlite3.c sz = cellSizePtr(pPage, &data[pc]); pPage 54687 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ) iCellLast++; pPage 54728 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree = (u16)(nFree - iCellFirst); pPage 54729 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = 1; pPage 54738 ext/sqlite3/libsqlite/sqlite3.c static void zeroPage(MemPage *pPage, int flags){ pPage 54739 ext/sqlite3/libsqlite/sqlite3.c unsigned char *data = pPage->aData; pPage 54740 ext/sqlite3/libsqlite/sqlite3.c BtShared *pBt = pPage->pBt; pPage 54741 ext/sqlite3/libsqlite/sqlite3.c u8 hdr = pPage->hdrOffset; pPage 54744 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerPagenumber(pPage->pDbPage)==pPage->pgno ); pPage 54745 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerGetExtra(pPage->pDbPage) == (void*)pPage ); pPage 54746 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerGetData(pPage->pDbPage) == data ); pPage 54747 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 54757 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree = (u16)(pBt->usableSize - first); pPage 54758 ext/sqlite3/libsqlite/sqlite3.c decodeFlags(pPage, flags); pPage 54759 ext/sqlite3/libsqlite/sqlite3.c pPage->cellOffset = first; pPage 54760 ext/sqlite3/libsqlite/sqlite3.c pPage->aDataEnd = &data[pBt->usableSize]; pPage 54761 ext/sqlite3/libsqlite/sqlite3.c pPage->aCellIdx = &data[first]; pPage 54762 ext/sqlite3/libsqlite/sqlite3.c pPage->nOverflow = 0; pPage 54764 ext/sqlite3/libsqlite/sqlite3.c pPage->maskPage = (u16)(pBt->pageSize - 1); pPage 54765 ext/sqlite3/libsqlite/sqlite3.c pPage->nCell = 0; pPage 54766 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = 1; pPage 54775 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = (MemPage*)sqlite3PagerGetExtra(pDbPage); pPage 54776 ext/sqlite3/libsqlite/sqlite3.c pPage->aData = sqlite3PagerGetData(pDbPage); pPage 54777 ext/sqlite3/libsqlite/sqlite3.c pPage->pDbPage = pDbPage; pPage 54778 ext/sqlite3/libsqlite/sqlite3.c pPage->pBt = pBt; pPage 54779 ext/sqlite3/libsqlite/sqlite3.c pPage->pgno = pgno; pPage 54780 ext/sqlite3/libsqlite/sqlite3.c pPage->hdrOffset = pPage->pgno==1 ? 100 : 0; pPage 54781 ext/sqlite3/libsqlite/sqlite3.c return pPage; pPage 54879 ext/sqlite3/libsqlite/sqlite3.c static void releasePage(MemPage *pPage){ pPage 54880 ext/sqlite3/libsqlite/sqlite3.c if( pPage ){ pPage 54881 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->aData ); pPage 54882 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pBt ); pPage 54883 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pDbPage!=0 ); pPage 54884 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerGetExtra(pPage->pDbPage) == (void*)pPage ); pPage 54885 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerGetData(pPage->pDbPage)==pPage->aData ); pPage 54886 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54887 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerUnrefNotNull(pPage->pDbPage); pPage 54900 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 54901 ext/sqlite3/libsqlite/sqlite3.c pPage = (MemPage *)sqlite3PagerGetExtra(pData); pPage 54903 ext/sqlite3/libsqlite/sqlite3.c if( pPage->isInit ){ pPage 54904 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 54905 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = 0; pPage 54913 ext/sqlite3/libsqlite/sqlite3.c btreeInitPage(pPage); pPage 56075 ext/sqlite3/libsqlite/sqlite3.c static int setChildPtrmaps(MemPage *pPage){ pPage 56079 ext/sqlite3/libsqlite/sqlite3.c BtShared *pBt = pPage->pBt; pPage 56080 ext/sqlite3/libsqlite/sqlite3.c u8 isInitOrig = pPage->isInit; pPage 56081 ext/sqlite3/libsqlite/sqlite3.c Pgno pgno = pPage->pgno; pPage 56083 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 56084 ext/sqlite3/libsqlite/sqlite3.c rc = btreeInitPage(pPage); pPage 56088 ext/sqlite3/libsqlite/sqlite3.c nCell = pPage->nCell; pPage 56091 ext/sqlite3/libsqlite/sqlite3.c u8 *pCell = findCell(pPage, i); pPage 56093 ext/sqlite3/libsqlite/sqlite3.c ptrmapPutOvflPtr(pPage, pCell, &rc); pPage 56095 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 56101 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 56102 ext/sqlite3/libsqlite/sqlite3.c Pgno childPgno = get4byte(&pPage->aData[pPage->hdrOffset+8]); pPage 56107 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = isInitOrig; pPage 56125 ext/sqlite3/libsqlite/sqlite3.c static int modifyPagePointer(MemPage *pPage, Pgno iFrom, Pgno iTo, u8 eType){ pPage 56126 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 56127 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 56130 ext/sqlite3/libsqlite/sqlite3.c if( get4byte(pPage->aData)!=iFrom ){ pPage 56133 ext/sqlite3/libsqlite/sqlite3.c put4byte(pPage->aData, iTo); pPage 56135 ext/sqlite3/libsqlite/sqlite3.c u8 isInitOrig = pPage->isInit; pPage 56139 ext/sqlite3/libsqlite/sqlite3.c btreeInitPage(pPage); pPage 56140 ext/sqlite3/libsqlite/sqlite3.c nCell = pPage->nCell; pPage 56143 ext/sqlite3/libsqlite/sqlite3.c u8 *pCell = findCell(pPage, i); pPage 56146 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &info); pPage 56148 ext/sqlite3/libsqlite/sqlite3.c && pCell+info.iOverflow+3<=pPage->aData+pPage->maskPage pPage 56164 ext/sqlite3/libsqlite/sqlite3.c get4byte(&pPage->aData[pPage->hdrOffset+8])!=iFrom ){ pPage 56167 ext/sqlite3/libsqlite/sqlite3.c put4byte(&pPage->aData[pPage->hdrOffset+8], iTo); pPage 56170 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = isInitOrig; pPage 57129 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = 0; pPage 57163 ext/sqlite3/libsqlite/sqlite3.c rc = btreeGetPage(pBt, ovfl, &pPage, (ppPage==0) ? PAGER_GET_READONLY : 0); pPage 57164 ext/sqlite3/libsqlite/sqlite3.c assert( rc==SQLITE_OK || pPage==0 ); pPage 57166 ext/sqlite3/libsqlite/sqlite3.c next = get4byte(pPage->aData); pPage 57172 ext/sqlite3/libsqlite/sqlite3.c *ppPage = pPage; pPage 57174 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 57251 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = pCur->apPage[pCur->iPage]; /* Btree page of current entry */ pPage 57258 ext/sqlite3/libsqlite/sqlite3.c assert( pPage ); pPage 57260 ext/sqlite3/libsqlite/sqlite3.c assert( pCur->aiIdx[pCur->iPage]<pPage->nCell ); pPage 57271 ext/sqlite3/libsqlite/sqlite3.c if( &aPayload[pCur->info.nLocal] > &pPage->aData[pBt->usableSize] ){ pPage 57282 ext/sqlite3/libsqlite/sqlite3.c rc = copyPayload(&aPayload[offset], pBuf, a, (eOp & 0x01), pPage->pDbPage); pPage 57725 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 57729 ext/sqlite3/libsqlite/sqlite3.c while( rc==SQLITE_OK && !(pPage = pCur->apPage[pCur->iPage])->leaf ){ pPage 57730 ext/sqlite3/libsqlite/sqlite3.c assert( pCur->aiIdx[pCur->iPage]<pPage->nCell ); pPage 57731 ext/sqlite3/libsqlite/sqlite3.c pgno = get4byte(findCell(pPage, pCur->aiIdx[pCur->iPage])); pPage 57750 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = 0; pPage 57754 ext/sqlite3/libsqlite/sqlite3.c while( !(pPage = pCur->apPage[pCur->iPage])->leaf ){ pPage 57755 ext/sqlite3/libsqlite/sqlite3.c pgno = get4byte(&pPage->aData[pPage->hdrOffset+8]); pPage 57756 ext/sqlite3/libsqlite/sqlite3.c pCur->aiIdx[pCur->iPage] = pPage->nCell; pPage 57760 ext/sqlite3/libsqlite/sqlite3.c pCur->aiIdx[pCur->iPage] = pPage->nCell-1; pPage 57919 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = pCur->apPage[pCur->iPage]; pPage 57928 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nCell>0 ); pPage 57929 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->intKey==(pIdxKey==0) ); pPage 57931 ext/sqlite3/libsqlite/sqlite3.c upr = pPage->nCell-1; pPage 57938 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage, idx) + pPage->childPtrSize; pPage 57939 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKeyLeaf ){ pPage 57941 ext/sqlite3/libsqlite/sqlite3.c if( pCell>=pPage->aDataEnd ) return SQLITE_CORRUPT_BKPT; pPage 57956 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 57971 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage, idx) + pPage->childPtrSize; pPage 57982 ext/sqlite3/libsqlite/sqlite3.c if( nCell<=pPage->max1bytePayload ){ pPage 57986 ext/sqlite3/libsqlite/sqlite3.c testcase( pCell+nCell+1==pPage->aDataEnd ); pPage 57989 ext/sqlite3/libsqlite/sqlite3.c && (nCell = ((nCell&0x7f)<<7) + pCell[1])<=pPage->maxLocal pPage 57993 ext/sqlite3/libsqlite/sqlite3.c testcase( pCell+nCell+2==pPage->aDataEnd ); pPage 58001 ext/sqlite3/libsqlite/sqlite3.c u8 * const pCellBody = pCell - pPage->childPtrSize; pPage 58002 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCellBody, &pCur->info); pPage 58039 ext/sqlite3/libsqlite/sqlite3.c assert( lwr==upr+1 || (pPage->intKey && !pPage->leaf) ); pPage 58040 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isInit ); pPage 58041 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf ){ pPage 58049 ext/sqlite3/libsqlite/sqlite3.c if( lwr>=pPage->nCell ){ pPage 58050 ext/sqlite3/libsqlite/sqlite3.c chldPg = get4byte(&pPage->aData[pPage->hdrOffset+8]); pPage 58052 ext/sqlite3/libsqlite/sqlite3.c chldPg = get4byte(findCell(pPage, lwr)); pPage 58104 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 58130 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 58132 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isInit ); pPage 58139 ext/sqlite3/libsqlite/sqlite3.c testcase( idx>pPage->nCell ); pPage 58141 ext/sqlite3/libsqlite/sqlite3.c if( idx>=pPage->nCell ){ pPage 58142 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 58143 ext/sqlite3/libsqlite/sqlite3.c rc = moveToChild(pCur, get4byte(&pPage->aData[pPage->hdrOffset+8])); pPage 58154 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 58155 ext/sqlite3/libsqlite/sqlite3.c }while( pCur->aiIdx[pCur->iPage]>=pPage->nCell ); pPage 58156 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKey ){ pPage 58162 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf ){ pPage 58169 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 58178 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 58179 ext/sqlite3/libsqlite/sqlite3.c if( (++pCur->aiIdx[pCur->iPage])>=pPage->nCell ){ pPage 58183 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf ){ pPage 58213 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 58241 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 58242 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isInit ); pPage 58243 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 58245 ext/sqlite3/libsqlite/sqlite3.c rc = moveToChild(pCur, get4byte(findCell(pPage, idx))); pPage 58261 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 58262 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKey && !pPage->leaf ){ pPage 58643 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; /* Page being freed. May be NULL. */ pPage 58652 ext/sqlite3/libsqlite/sqlite3.c pPage = pMemPage; pPage 58653 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerRef(pPage->pDbPage); pPage 58655 ext/sqlite3/libsqlite/sqlite3.c pPage = btreePageLookup(pBt, iPage); pPage 58668 ext/sqlite3/libsqlite/sqlite3.c if( (!pPage && ((rc = btreeGetPage(pBt, iPage, &pPage, 0))!=0) ) pPage 58669 ext/sqlite3/libsqlite/sqlite3.c || ((rc = sqlite3PagerWrite(pPage->pDbPage))!=0) pPage 58673 ext/sqlite3/libsqlite/sqlite3.c memset(pPage->aData, 0, pPage->pBt->pageSize); pPage 58730 ext/sqlite3/libsqlite/sqlite3.c if( pPage && (pBt->btsFlags & BTS_SECURE_DELETE)==0 ){ pPage 58731 ext/sqlite3/libsqlite/sqlite3.c sqlite3PagerDontWrite(pPage->pDbPage); pPage 58735 ext/sqlite3/libsqlite/sqlite3.c TRACE(("FREE-PAGE: %d leaf on trunk page %d\n",pPage->pgno,pTrunk->pgno)); pPage 58746 ext/sqlite3/libsqlite/sqlite3.c if( pPage==0 && SQLITE_OK!=(rc = btreeGetPage(pBt, iPage, &pPage, 0)) ){ pPage 58749 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3PagerWrite(pPage->pDbPage); pPage 58753 ext/sqlite3/libsqlite/sqlite3.c put4byte(pPage->aData, iTrunk); pPage 58754 ext/sqlite3/libsqlite/sqlite3.c put4byte(&pPage->aData[4], 0); pPage 58756 ext/sqlite3/libsqlite/sqlite3.c TRACE(("FREE-PAGE: %d new trunk page replacing %d\n", pPage->pgno, iTrunk)); pPage 58759 ext/sqlite3/libsqlite/sqlite3.c if( pPage ){ pPage 58760 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = 0; pPage 58762 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 58766 ext/sqlite3/libsqlite/sqlite3.c static void freePage(MemPage *pPage, int *pRC){ pPage 58768 ext/sqlite3/libsqlite/sqlite3.c *pRC = freePage2(pPage->pBt, pPage, pPage->pgno); pPage 58778 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage, /* The page that contains the Cell */ pPage 58782 ext/sqlite3/libsqlite/sqlite3.c BtShared *pBt = pPage->pBt; pPage 58789 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 58790 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &info); pPage 58795 ext/sqlite3/libsqlite/sqlite3.c if( pCell+info.iOverflow+3 > pPage->aData+pPage->maskPage ){ pPage 58857 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage, /* The page that contains the cell */ pPage 58872 ext/sqlite3/libsqlite/sqlite3.c BtShared *pBt = pPage->pBt; pPage 58876 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 58880 ext/sqlite3/libsqlite/sqlite3.c assert( pCell<pPage->aData || pCell>=&pPage->aData[pBt->pageSize] pPage 58881 ext/sqlite3/libsqlite/sqlite3.c || sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 58884 ext/sqlite3/libsqlite/sqlite3.c nHeader = pPage->childPtrSize; pPage 58886 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKeyLeaf ){ pPage 58895 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKey ){ pPage 58907 ext/sqlite3/libsqlite/sqlite3.c if( nPayload<=pPage->maxLocal ){ pPage 58916 ext/sqlite3/libsqlite/sqlite3.c int mn = pPage->minLocal; pPage 58917 ext/sqlite3/libsqlite/sqlite3.c n = mn + (nPayload - mn) % (pPage->pBt->usableSize - 4); pPage 58918 ext/sqlite3/libsqlite/sqlite3.c testcase( n==pPage->maxLocal ); pPage 58919 ext/sqlite3/libsqlite/sqlite3.c testcase( n==pPage->maxLocal+1 ); pPage 58920 ext/sqlite3/libsqlite/sqlite3.c if( n > pPage->maxLocal ) n = mn; pPage 58942 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &info); pPage 58995 ext/sqlite3/libsqlite/sqlite3.c assert( pPrior<pPage->aData || pPrior>=&pPage->aData[pBt->pageSize] pPage 58996 ext/sqlite3/libsqlite/sqlite3.c || sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 59015 ext/sqlite3/libsqlite/sqlite3.c assert( pPayload<pPage->aData || pPayload>=&pPage->aData[pBt->pageSize] pPage 59016 ext/sqlite3/libsqlite/sqlite3.c || sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 59047 ext/sqlite3/libsqlite/sqlite3.c static void dropCell(MemPage *pPage, int idx, int sz, int *pRC){ pPage 59056 ext/sqlite3/libsqlite/sqlite3.c assert( idx>=0 && idx<pPage->nCell ); pPage 59057 ext/sqlite3/libsqlite/sqlite3.c assert( sz==cellSize(pPage, idx) ); pPage 59058 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 59059 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 59060 ext/sqlite3/libsqlite/sqlite3.c data = pPage->aData; pPage 59061 ext/sqlite3/libsqlite/sqlite3.c ptr = &pPage->aCellIdx[2*idx]; pPage 59063 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 59065 ext/sqlite3/libsqlite/sqlite3.c testcase( pc+sz==pPage->pBt->usableSize ); pPage 59066 ext/sqlite3/libsqlite/sqlite3.c if( pc < (u32)get2byte(&data[hdr+5]) || pc+sz > pPage->pBt->usableSize ){ pPage 59070 ext/sqlite3/libsqlite/sqlite3.c rc = freeSpace(pPage, pc, sz); pPage 59075 ext/sqlite3/libsqlite/sqlite3.c pPage->nCell--; pPage 59076 ext/sqlite3/libsqlite/sqlite3.c if( pPage->nCell==0 ){ pPage 59079 ext/sqlite3/libsqlite/sqlite3.c put2byte(&data[hdr+5], pPage->pBt->usableSize); pPage 59080 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree = pPage->pBt->usableSize - pPage->hdrOffset pPage 59081 ext/sqlite3/libsqlite/sqlite3.c - pPage->childPtrSize - 8; pPage 59083 ext/sqlite3/libsqlite/sqlite3.c memmove(ptr, ptr+2, 2*(pPage->nCell - idx)); pPage 59084 ext/sqlite3/libsqlite/sqlite3.c put2byte(&data[hdr+3], pPage->nCell); pPage 59085 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree += 2; pPage 59102 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage, /* Page into which we are copying */ pPage 59119 ext/sqlite3/libsqlite/sqlite3.c assert( i>=0 && i<=pPage->nCell+pPage->nOverflow ); pPage 59120 ext/sqlite3/libsqlite/sqlite3.c assert( MX_CELL(pPage->pBt)<=10921 ); pPage 59121 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nCell<=MX_CELL(pPage->pBt) || CORRUPT_DB ); pPage 59122 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nOverflow<=ArraySize(pPage->apOvfl) ); pPage 59123 ext/sqlite3/libsqlite/sqlite3.c assert( ArraySize(pPage->apOvfl)==ArraySize(pPage->aiOvfl) ); pPage 59124 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 59130 ext/sqlite3/libsqlite/sqlite3.c assert( sz==cellSizePtr(pPage, pCell) || (sz==8 && iChild>0) ); pPage 59131 ext/sqlite3/libsqlite/sqlite3.c if( pPage->nOverflow || sz+2>pPage->nFree ){ pPage 59139 ext/sqlite3/libsqlite/sqlite3.c j = pPage->nOverflow++; pPage 59140 ext/sqlite3/libsqlite/sqlite3.c assert( j<(int)(sizeof(pPage->apOvfl)/sizeof(pPage->apOvfl[0])) ); pPage 59141 ext/sqlite3/libsqlite/sqlite3.c pPage->apOvfl[j] = pCell; pPage 59142 ext/sqlite3/libsqlite/sqlite3.c pPage->aiOvfl[j] = (u16)i; pPage 59144 ext/sqlite3/libsqlite/sqlite3.c int rc = sqlite3PagerWrite(pPage->pDbPage); pPage 59149 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3PagerIswriteable(pPage->pDbPage) ); pPage 59150 ext/sqlite3/libsqlite/sqlite3.c data = pPage->aData; pPage 59151 ext/sqlite3/libsqlite/sqlite3.c cellOffset = pPage->cellOffset; pPage 59152 ext/sqlite3/libsqlite/sqlite3.c end = cellOffset + 2*pPage->nCell; pPage 59154 ext/sqlite3/libsqlite/sqlite3.c rc = allocateSpace(pPage, sz, &idx); pPage 59159 ext/sqlite3/libsqlite/sqlite3.c assert( idx+sz <= (int)pPage->pBt->usableSize ); pPage 59160 ext/sqlite3/libsqlite/sqlite3.c pPage->nCell++; pPage 59161 ext/sqlite3/libsqlite/sqlite3.c pPage->nFree -= (u16)(2 + sz); pPage 59168 ext/sqlite3/libsqlite/sqlite3.c put2byte(&data[pPage->hdrOffset+3], pPage->nCell); pPage 59170 ext/sqlite3/libsqlite/sqlite3.c if( pPage->pBt->autoVacuum ){ pPage 59174 ext/sqlite3/libsqlite/sqlite3.c ptrmapPutOvflPtr(pPage, pCell, pRC); pPage 59488 ext/sqlite3/libsqlite/sqlite3.c static int balance_quick(MemPage *pParent, MemPage *pPage, u8 *pSpace){ pPage 59489 ext/sqlite3/libsqlite/sqlite3.c BtShared *const pBt = pPage->pBt; /* B-Tree Database */ pPage 59494 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pPage->pBt->mutex) ); pPage 59496 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->nOverflow==1 ); pPage 59499 ext/sqlite3/libsqlite/sqlite3.c if( NEVER(pPage->nCell==0) ) return SQLITE_CORRUPT_BKPT; pPage 59510 ext/sqlite3/libsqlite/sqlite3.c u8 *pCell = pPage->apOvfl[0]; pPage 59511 ext/sqlite3/libsqlite/sqlite3.c u16 szCell = cellSizePtr(pPage, pCell); pPage 59515 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->aData[0]==(PTF_INTKEY|PTF_LEAFDATA|PTF_LEAF) ); pPage 59549 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage, pPage->nCell-1); pPage 59557 ext/sqlite3/libsqlite/sqlite3.c 0, pPage->pgno, &rc); pPage 59581 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = apPage[i]; pPage 59582 ext/sqlite3/libsqlite/sqlite3.c BtShared *pBt = pPage->pBt; pPage 59583 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isInit ); pPage 59585 ext/sqlite3/libsqlite/sqlite3.c for(j=0; j<pPage->nCell; j++){ pPage 59589 ext/sqlite3/libsqlite/sqlite3.c z = findCell(pPage, j); pPage 59590 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, z, &info); pPage 59594 ext/sqlite3/libsqlite/sqlite3.c assert( n==pPage->pgno && e==PTRMAP_OVERFLOW1 ); pPage 59596 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 59599 ext/sqlite3/libsqlite/sqlite3.c assert( n==pPage->pgno && e==PTRMAP_BTREE ); pPage 59602 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 59603 ext/sqlite3/libsqlite/sqlite3.c Pgno child = get4byte(&pPage->aData[pPage->hdrOffset+8]); pPage 59605 ext/sqlite3/libsqlite/sqlite3.c assert( n==pPage->pgno && e==PTRMAP_BTREE ); pPage 59758 ext/sqlite3/libsqlite/sqlite3.c TRACE(("BALANCE: begin page %d child of %d\n", pPage->pgno, pParent->pgno)); pPage 60473 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = pCur->apPage[iPage]; pPage 60476 ext/sqlite3/libsqlite/sqlite3.c if( pPage->nOverflow ){ pPage 60483 ext/sqlite3/libsqlite/sqlite3.c rc = balance_deeper(pPage, &pCur->apPage[1]); pPage 60493 ext/sqlite3/libsqlite/sqlite3.c }else if( pPage->nOverflow==0 && pPage->nFree<=nMin ){ pPage 60502 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKeyLeaf pPage 60503 ext/sqlite3/libsqlite/sqlite3.c && pPage->nOverflow==1 pPage 60504 ext/sqlite3/libsqlite/sqlite3.c && pPage->aiOvfl[0]==pPage->nCell pPage 60522 ext/sqlite3/libsqlite/sqlite3.c rc = balance_quick(pParent, pPage, aBalanceQuickSpace); pPage 60561 ext/sqlite3/libsqlite/sqlite3.c pPage->nOverflow = 0; pPage 60564 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 60611 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 60669 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 60670 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->intKey || nKey>=0 ); pPage 60671 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->leaf || !pPage->intKey ); pPage 60674 ext/sqlite3/libsqlite/sqlite3.c pCur->pgnoRoot, nKey, nData, pPage->pgno, pPage 60676 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->isInit ); pPage 60679 ext/sqlite3/libsqlite/sqlite3.c rc = fillInCell(pPage, newCell, pKey, nKey, pData, nData, nZero, &szNew); pPage 60681 ext/sqlite3/libsqlite/sqlite3.c assert( szNew==cellSizePtr(pPage, newCell) ); pPage 60686 ext/sqlite3/libsqlite/sqlite3.c assert( idx<pPage->nCell ); pPage 60687 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3PagerWrite(pPage->pDbPage); pPage 60691 ext/sqlite3/libsqlite/sqlite3.c oldCell = findCell(pPage, idx); pPage 60692 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 60695 ext/sqlite3/libsqlite/sqlite3.c rc = clearCell(pPage, oldCell, &szOld); pPage 60696 ext/sqlite3/libsqlite/sqlite3.c dropCell(pPage, idx, szOld, &rc); pPage 60698 ext/sqlite3/libsqlite/sqlite3.c }else if( loc<0 && pPage->nCell>0 ){ pPage 60699 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->leaf ); pPage 60702 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->leaf ); pPage 60704 ext/sqlite3/libsqlite/sqlite3.c insertCell(pPage, idx, newCell, szNew, 0, 0, &rc); pPage 60705 ext/sqlite3/libsqlite/sqlite3.c assert( rc!=SQLITE_OK || pPage->nCell>0 || pPage->nOverflow>0 ); pPage 60728 ext/sqlite3/libsqlite/sqlite3.c if( rc==SQLITE_OK && pPage->nOverflow ){ pPage 60753 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; /* Page to delete cell from */ pPage 60774 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[iCellDepth]; pPage 60775 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage, iCellIdx); pPage 60784 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 60804 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3PagerWrite(pPage->pDbPage); pPage 60806 ext/sqlite3/libsqlite/sqlite3.c rc = clearCell(pPage, pCell, &szCell); pPage 60807 ext/sqlite3/libsqlite/sqlite3.c dropCell(pPage, iCellIdx, szCell, &rc); pPage 60815 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 60827 ext/sqlite3/libsqlite/sqlite3.c insertCell(pPage, iCellIdx, pCell-4, nCell+4, pTmp, n, &rc); pPage 61032 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 61043 ext/sqlite3/libsqlite/sqlite3.c rc = getAndInitPage(pBt, pgno, &pPage, 0); pPage 61045 ext/sqlite3/libsqlite/sqlite3.c if( pPage->bBusy ){ pPage 61049 ext/sqlite3/libsqlite/sqlite3.c pPage->bBusy = 1; pPage 61050 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 61051 ext/sqlite3/libsqlite/sqlite3.c for(i=0; i<pPage->nCell; i++){ pPage 61052 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage, i); pPage 61053 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 61057 ext/sqlite3/libsqlite/sqlite3.c rc = clearCell(pPage, pCell, &szCell); pPage 61060 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 61061 ext/sqlite3/libsqlite/sqlite3.c rc = clearDatabasePage(pBt, get4byte(&pPage->aData[hdr+8]), 1, pnChange); pPage 61064 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->intKey ); pPage 61065 ext/sqlite3/libsqlite/sqlite3.c *pnChange += pPage->nCell; pPage 61068 ext/sqlite3/libsqlite/sqlite3.c freePage(pPage, &rc); pPage 61069 ext/sqlite3/libsqlite/sqlite3.c }else if( (rc = sqlite3PagerWrite(pPage->pDbPage))==0 ){ pPage 61070 ext/sqlite3/libsqlite/sqlite3.c zeroPage(pPage, pPage->aData[hdr] | PTF_LEAF); pPage 61074 ext/sqlite3/libsqlite/sqlite3.c pPage->bBusy = 0; pPage 61075 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61142 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage = 0; pPage 61161 ext/sqlite3/libsqlite/sqlite3.c rc = btreeGetPage(pBt, (Pgno)iTable, &pPage, 0); pPage 61165 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61173 ext/sqlite3/libsqlite/sqlite3.c freePage(pPage, &rc); pPage 61174 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61184 ext/sqlite3/libsqlite/sqlite3.c freePage(pPage, &rc); pPage 61185 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61195 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61229 ext/sqlite3/libsqlite/sqlite3.c freePage(pPage, &rc); pPage 61230 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61238 ext/sqlite3/libsqlite/sqlite3.c zeroPage(pPage, PTF_INTKEY|PTF_LEAF ); pPage 61239 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61350 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; /* Current page of the b-tree */ pPage 61356 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 61357 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf || !pPage->intKey ){ pPage 61358 ext/sqlite3/libsqlite/sqlite3.c nEntry += pPage->nCell; pPage 61371 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf ){ pPage 61382 ext/sqlite3/libsqlite/sqlite3.c pPage = pCur->apPage[pCur->iPage]; pPage 61389 ext/sqlite3/libsqlite/sqlite3.c if( iIdx==pPage->nCell ){ pPage 61390 ext/sqlite3/libsqlite/sqlite3.c rc = moveToChild(pCur, get4byte(&pPage->aData[pPage->hdrOffset+8])); pPage 61392 ext/sqlite3/libsqlite/sqlite3.c rc = moveToChild(pCur, get4byte(findCell(pPage, iIdx))); pPage 61658 ext/sqlite3/libsqlite/sqlite3.c MemPage *pPage; pPage 61681 ext/sqlite3/libsqlite/sqlite3.c if( (rc = btreeGetPage(pBt, (Pgno)iPage, &pPage, 0))!=0 ){ pPage 61690 ext/sqlite3/libsqlite/sqlite3.c pPage->isInit = 0; pPage 61691 ext/sqlite3/libsqlite/sqlite3.c if( (rc = btreeInitPage(pPage))!=0 ){ pPage 61695 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 61703 ext/sqlite3/libsqlite/sqlite3.c for(i=0; i<pPage->nCell && pCheck->mxErr; i++){ pPage 61713 ext/sqlite3/libsqlite/sqlite3.c pCell = findCell(pPage,i); pPage 61714 ext/sqlite3/libsqlite/sqlite3.c btreeParseCellPtr(pPage, pCell, &info); pPage 61718 ext/sqlite3/libsqlite/sqlite3.c if( pPage->intKey ){ pPage 61728 ext/sqlite3/libsqlite/sqlite3.c && (&pCell[info.iOverflow]<=&pPage->aData[pBt->usableSize]) pPage 61742 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 61757 ext/sqlite3/libsqlite/sqlite3.c if( !pPage->leaf ){ pPage 61758 ext/sqlite3/libsqlite/sqlite3.c pgno = get4byte(&pPage->aData[pPage->hdrOffset+8]); pPage 61766 ext/sqlite3/libsqlite/sqlite3.c checkTreePage(pCheck, pgno, NULL, !pPage->nCell?NULL:&nMaxKey); pPage 61774 ext/sqlite3/libsqlite/sqlite3.c if( pPage->leaf && pPage->intKey ){ pPage 61809 ext/sqlite3/libsqlite/sqlite3.c data = pPage->aData; pPage 61810 ext/sqlite3/libsqlite/sqlite3.c hdr = pPage->hdrOffset; pPage 61825 ext/sqlite3/libsqlite/sqlite3.c cellStart = hdr + 12 - 4*pPage->leaf; pPage 61832 ext/sqlite3/libsqlite/sqlite3.c size = cellSizePtr(pPage, &data[pc]); pPage 61890 ext/sqlite3/libsqlite/sqlite3.c releasePage(pPage); pPage 128218 ext/sqlite3/libsqlite/sqlite3.c sqlite3PCacheBufferSetup( sqlite3GlobalConfig.pPage, pPage 128430 ext/sqlite3/libsqlite/sqlite3.c sqlite3GlobalConfig.pPage = va_arg(ap, void*);