Within the special new.* and old.* tables of a trigger, recognize all the
original table names even if those names overload the "rowid", "oid", or
"_rowid_" special names. Ticket [34d2ae1c6d0].
FossilOrigin-Name: 1a0e5fa9f0ff792c678c99d49960601a0cef925b
diff --git a/src/resolve.c b/src/resolve.c
index 0a59be7..51f7560 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -243,19 +243,18 @@
int iCol;
pSchema = pTab->pSchema;
cntTab++;
- if( sqlite3IsRowid(zCol) ){
- iCol = -1;
- }else{
- for(iCol=0; iCol<pTab->nCol; iCol++){
- Column *pCol = &pTab->aCol[iCol];
- if( sqlite3StrICmp(pCol->zName, zCol)==0 ){
- if( iCol==pTab->iPKey ){
- iCol = -1;
- }
- break;
+ for(iCol=0; iCol<pTab->nCol; iCol++){
+ Column *pCol = &pTab->aCol[iCol];
+ if( sqlite3StrICmp(pCol->zName, zCol)==0 ){
+ if( iCol==pTab->iPKey ){
+ iCol = -1;
}
+ break;
}
}
+ if( iCol>=pTab->nCol && sqlite3IsRowid(zCol) ){
+ iCol = -1;
+ }
if( iCol<pTab->nCol ){
cnt++;
if( iCol<0 ){