aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
diff options
context:
space:
mode:
authordan <dan@noemail.net>2020-01-03 14:27:08 +0000
committerdan <dan@noemail.net>2020-01-03 14:27:08 +0000
commit607dd6e6080c260e73dbacf777cf43d9cd22bd18 (patch)
tree3a048c4040c97c8be214de6a636d0134e37c0faf /src/resolve.c
parent90996885fcad330e5773ae77b2f0276e9233bb47 (diff)
downloadsqlite-607dd6e6080c260e73dbacf777cf43d9cd22bd18.tar.gz
sqlite-607dd6e6080c260e73dbacf777cf43d9cd22bd18.zip
Fix a possible NULL pointer dereference caused by using a "VALUES(...)" as a component of a compound SELECT with non-integer ORDER BY clause terms.
FossilOrigin-Name: 9d791116420f4e3f613775569e0a0cba2fc22da568b2fb2df920bcf9c9002938
Diffstat (limited to 'src/resolve.c')
-rw-r--r--src/resolve.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/resolve.c b/src/resolve.c
index f69f9ef31..31b443ed8 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -453,8 +453,7 @@ static int lookupName(
for(j=0; j<pEList->nExpr; j++){
char *zAs = pEList->a[j].zEName;
if( pEList->a[j].eEName==ENAME_NAME
- && ALWAYS(zAs!=0)
- && sqlite3StrICmp(zAs, zCol)==0
+ && sqlite3_stricmp(zAs, zCol)==0
){
Expr *pOrig;
assert( pExpr->pLeft==0 && pExpr->pRight==0 );
@@ -1123,10 +1122,8 @@ static int resolveAsName(
if( pE->op==TK_ID ){
char *zCol = pE->u.zToken;
for(i=0; i<pEList->nExpr; i++){
- char *zAs = pEList->a[i].zEName;
if( pEList->a[i].eEName==ENAME_NAME
- && ALWAYS(zAs!=0)
- && sqlite3StrICmp(zAs, zCol)==0
+ && sqlite3_stricmp(pEList->a[i].zEName, zCol)==0
){
return i+1;
}