diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/insert.c | 8 | ||||
-rw-r--r-- | src/resolve.c | 9 |
2 files changed, 6 insertions, 11 deletions
diff --git a/src/insert.c b/src/insert.c index 05d84df84..839599438 100644 --- a/src/insert.c +++ b/src/insert.c @@ -705,11 +705,13 @@ void sqlite3Insert( sNC.pParse = pParse; srcTab = -1; assert( useTempTable==0 ); - nColumn = pList ? pList->nExpr : 0; - for(i=0; i<nColumn; i++){ - if( sqlite3ResolveExprNames(&sNC, pList->a[i].pExpr) ){ + if( pList ){ + nColumn = pList->nExpr; + if( sqlite3ResolveExprListNames(&sNC, pList) ){ goto insert_cleanup; } + }else{ + nColumn = 0; } } diff --git a/src/resolve.c b/src/resolve.c index c859e886a..4ef8fe051 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -1507,7 +1507,6 @@ void sqlite3ResolveSelfReference( ){ SrcList sSrc; /* Fake SrcList for pParse->pNewTable */ NameContext sNC; /* Name context for pParse->pNewTable */ - int i; /* Loop counter */ assert( type==NC_IsCheck || type==NC_PartIdx ); memset(&sNC, 0, sizeof(sNC)); @@ -1520,11 +1519,5 @@ void sqlite3ResolveSelfReference( sNC.pSrcList = &sSrc; sNC.ncFlags = type; if( sqlite3ResolveExprNames(&sNC, pExpr) ) return; - if( pList ){ - for(i=0; i<pList->nExpr; i++){ - if( sqlite3ResolveExprNames(&sNC, pList->a[i].pExpr) ){ - return; - } - } - } + if( pList ) sqlite3ResolveExprListNames(&sNC, pList); } |