diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/alter.c | 5 | ||||
-rw-r--r-- | src/resolve.c | 8 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/alter.c b/src/alter.c index f3caba4c1..ee193d18b 100644 --- a/src/alter.c +++ b/src/alter.c @@ -811,7 +811,7 @@ void sqlite3RenameExprlistUnmap(Parse *pParse, ExprList *pEList){ sWalker.xExprCallback = renameUnmapExprCb; sqlite3WalkExprList(&sWalker, pEList); for(i=0; i<pEList->nExpr; i++){ - if( pEList->a[i].eEName==ENAME_NAME ){ + if( ALWAYS(pEList->a[i].eEName==ENAME_NAME) ){ sqlite3RenameTokenRemap(pParse, 0, (void*)pEList->a[i].zEName); } } @@ -952,7 +952,8 @@ static void renameColumnElistNames( int i; for(i=0; i<pEList->nExpr; i++){ char *zName = pEList->a[i].zEName; - if( pEList->a[i].eEName==ENAME_NAME + if( ALWAYS(pEList->a[i].eEName==ENAME_NAME) + && ALWAYS(zName!=0) && 0==sqlite3_stricmp(zName, zOld) ){ renameTokenFind(pParse, pCtx, (void*)zName); diff --git a/src/resolve.c b/src/resolve.c index 607cfd5df..f69f9ef31 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -140,7 +140,7 @@ int sqlite3MatchEName( ){ int n; const char *zSpan; - if( pItem->eEName!=ENAME_TAB ) return 0; + if( NEVER(pItem->eEName!=ENAME_TAB) ) return 0; zSpan = pItem->zEName; for(n=0; ALWAYS(zSpan[n]) && zSpan[n]!='.'; n++){} if( zDb && (sqlite3StrNICmp(zSpan, zDb, n)!=0 || zDb[n]!=0) ){ @@ -451,9 +451,9 @@ static int lookupName( pEList = pNC->uNC.pEList; assert( pEList!=0 ); for(j=0; j<pEList->nExpr; j++){ - char *zAs; + char *zAs = pEList->a[j].zEName; if( pEList->a[j].eEName==ENAME_NAME - && (zAs = pEList->a[j].zEName)!=0 + && ALWAYS(zAs!=0) && sqlite3StrICmp(zAs, zCol)==0 ){ Expr *pOrig; @@ -1125,7 +1125,7 @@ static int resolveAsName( for(i=0; i<pEList->nExpr; i++){ char *zAs = pEList->a[i].zEName; if( pEList->a[i].eEName==ENAME_NAME - && (zAs = pEList->a[i].zEName)!=0 + && ALWAYS(zAs!=0) && sqlite3StrICmp(zAs, zCol)==0 ){ return i+1; |