aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2020-11-08 20:44:30 +0000
committerdrh <drh@noemail.net>2020-11-08 20:44:30 +0000
commit235667a858fb5f98227ae19715f2539878705bcb (patch)
tree0c0bca6e0ade98111302305eacb241a239f9f0bb /src/resolve.c
parent78043e891ab2fba7dbec1493a9d3e10ab2476745 (diff)
downloadsqlite-235667a858fb5f98227ae19715f2539878705bcb.tar.gz
sqlite-235667a858fb5f98227ae19715f2539878705bcb.zip
Use NEVER and ALWAYS macros to confirm that the return value from
sqlite3ExprSkipCollateAndLikely() is never NULL in some of its use cases. FossilOrigin-Name: 76d2eb86e109fc3cbdba2e8175c22ed7660b59bb9315f6c55c565587f33ad43b
Diffstat (limited to 'src/resolve.c')
-rw-r--r--src/resolve.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/resolve.c b/src/resolve.c
index d53428c63..b55bdc418 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -1284,6 +1284,7 @@ static int resolveCompoundOrderBy(
Expr *pE, *pDup;
if( pItem->done ) continue;
pE = sqlite3ExprSkipCollateAndLikely(pItem->pExpr);
+ if( NEVER(pE==0) ) continue;
if( sqlite3ExprIsInteger(pE, &iCol) ){
if( iCol<=0 || iCol>pEList->nExpr ){
resolveOutOfRangeError(pParse, "ORDER", i+1, pEList->nExpr);
@@ -1463,6 +1464,7 @@ static int resolveOrderGroupBy(
for(i=0, pItem=pOrderBy->a; i<pOrderBy->nExpr; i++, pItem++){
Expr *pE = pItem->pExpr;
Expr *pE2 = sqlite3ExprSkipCollateAndLikely(pE);
+ if( NEVER(pE2==0) ) continue;
if( zType[0]!='G' ){
iCol = resolveAsName(pParse, pSelect->pEList, pE2);
if( iCol>0 ){