Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Merge in trunk fixes. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | fuzzcheck |
Files: | files | file ages | folders |
SHA1: |
c71c2e1a991775e1711e9621a59dd8a6 |
User & Date: | drh 2015-05-25 22:18:33.572 |
Context
2015-05-25
| ||
22:29 | Add fuzzcheck to all makefiles and fix compiler warnings. (Closed-Leaf check-in: 7b3d21906a user: drh tags: fuzzcheck) | |
22:18 | Merge in trunk fixes. (check-in: c71c2e1a99 user: drh tags: fuzzcheck) | |
22:17 | Improved tracing capabilities in fuzzcheck. (check-in: 864bfdbfe7 user: drh tags: fuzzcheck) | |
20:04 | Fix a case of a corrupt database causing SQLite to read from up to 4 bytes before the start of a memory allocation. (check-in: 7d2c4f7b66 user: dan tags: trunk) | |
Changes
Changes to src/btree.c.
︙ | ︙ | |||
7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 | if( !pPage->leaf ){ MemPage *pLeaf = pCur->apPage[pCur->iPage]; int nCell; Pgno n = pCur->apPage[iCellDepth+1]->pgno; unsigned char *pTmp; pCell = findCell(pLeaf, pLeaf->nCell-1); nCell = cellSizePtr(pLeaf, pCell); assert( MX_CELL_SIZE(pBt) >= nCell ); pTmp = pBt->pTmpSpace; assert( pTmp!=0 ); rc = sqlite3PagerWrite(pLeaf->pDbPage); insertCell(pPage, iCellIdx, pCell-4, nCell+4, pTmp, n, &rc); dropCell(pLeaf, pLeaf->nCell-1, nCell, &rc); | > | 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 | if( !pPage->leaf ){ MemPage *pLeaf = pCur->apPage[pCur->iPage]; int nCell; Pgno n = pCur->apPage[iCellDepth+1]->pgno; unsigned char *pTmp; pCell = findCell(pLeaf, pLeaf->nCell-1); if( pCell<&pLeaf->aData[4] ) return SQLITE_CORRUPT_BKPT; nCell = cellSizePtr(pLeaf, pCell); assert( MX_CELL_SIZE(pBt) >= nCell ); pTmp = pBt->pTmpSpace; assert( pTmp!=0 ); rc = sqlite3PagerWrite(pLeaf->pDbPage); insertCell(pPage, iCellIdx, pCell-4, nCell+4, pTmp, n, &rc); dropCell(pLeaf, pLeaf->nCell-1, nCell, &rc); |
︙ | ︙ |