mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Merge fixes from trunk into the empty-table-optimizations branch
FossilOrigin-Name: 6f98b16d210a9f5b6ca4b4599e3dab3263eddbae7c70ddbcabf988f4a1014e8b
This commit is contained in:
@@ -1929,10 +1929,10 @@ static int freeSpace(MemPage *pPage, int iStart, int iSize){
|
||||
assert( pPage->pBt!=0 );
|
||||
assert( sqlite3PagerIswriteable(pPage->pDbPage) );
|
||||
assert( CORRUPT_DB || iStart>=pPage->hdrOffset+6+pPage->childPtrSize );
|
||||
assert( CORRUPT_DB || iEnd <= pPage->pBt->usableSize );
|
||||
assert( CORRUPT_DB || iEnd <= (int)pPage->pBt->usableSize );
|
||||
assert( sqlite3_mutex_held(pPage->pBt->mutex) );
|
||||
assert( iSize>=4 ); /* Minimum cell size is 4 */
|
||||
assert( CORRUPT_DB || iStart<=pPage->pBt->usableSize-4 );
|
||||
assert( CORRUPT_DB || iStart<=(int)pPage->pBt->usableSize-4 );
|
||||
|
||||
/* The list of freeblocks must be in ascending order. Find the
|
||||
** spot on the list where iStart should be inserted.
|
||||
|
@@ -2428,6 +2428,7 @@ static int exprComputeOperands(
|
||||
VdbeComment((v, "skip left operand"));
|
||||
VdbeCoverage(v);
|
||||
}else{
|
||||
r2 = 0; /* Silence a false-positive uninit-var warning in MSVC */
|
||||
addrIsNull = 0;
|
||||
}
|
||||
r1 = sqlite3ExprCodeTemp(pParse, pExpr->pLeft, pFree1);
|
||||
|
@@ -1697,7 +1697,7 @@ void SQLITE_NOINLINE sqlite3WhereAddLimit(WhereClause *pWC, Select *p){
|
||||
WhereTerm *pParent = &pWC->a[ pWC->a[ii].iParent ];
|
||||
if( pParent->leftCursor==iCsr
|
||||
&& pParent->prereqRight==0
|
||||
&& ALWAYS(pParent->nChild==1)
|
||||
&& pParent->nChild==1
|
||||
){
|
||||
continue;
|
||||
}
|
||||
|
Reference in New Issue
Block a user