1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-07 02:42:48 +03:00

Fix an assert() in btree routine freeSpace() that may be false if the database is corrupt.

FossilOrigin-Name: 00a473c56188cd60a74559effb114140e3fe8a8d
This commit is contained in:
dan
2015-05-25 15:03:49 +00:00
parent 3fb37f097c
commit cf3d17c604
4 changed files with 35 additions and 9 deletions

View File

@@ -1416,7 +1416,7 @@ static int freeSpace(MemPage *pPage, u16 iStart, u16 iSize){
assert( pPage->pBt!=0 );
assert( sqlite3PagerIswriteable(pPage->pDbPage) );
assert( iStart>=pPage->hdrOffset+6+pPage->childPtrSize );
assert( CORRUPT_DB || iStart>=pPage->hdrOffset+6+pPage->childPtrSize );
assert( CORRUPT_DB || iEnd <= pPage->pBt->usableSize );
assert( sqlite3_mutex_held(pPage->pBt->mutex) );
assert( iSize>=4 ); /* Minimum cell size is 4 */