Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Ensure that sqlite3RenameExprUnmap() does an unmap of the result set alias names in subqueries when ALTER TABLE fails because of a syntax error in a trigger. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
d3b6f1665f6fb5fc5cf1c0864d779d0b |
User & Date: | drh 2019-06-15 15:21:49.851 |
Context
2019-06-15
| ||
15:27 | Add extra test case for one of the problems fixed by the previous commit. (check-in: 0bbceebb12 user: dan tags: trunk) | |
15:21 | Ensure that sqlite3RenameExprUnmap() does an unmap of the result set alias names in subqueries when ALTER TABLE fails because of a syntax error in a trigger. (check-in: d3b6f1665f user: drh tags: trunk) | |
2019-06-14
| ||
17:37 | Deprecate the SQLITE_ALLOW_COVERING_INDEX_SCAN compile-time option when it is turned off. This probably will impact no-one. If it does, they will get an error message instructing them to contact developers, so that we can get feedback that somebody is actually using this feature. Start-time disabling of covering index scan is not affected. (check-in: 23e49f9984 user: drh tags: trunk) | |
Changes
Changes to src/alter.c.
︙ | ︙ | |||
727 728 729 730 731 732 733 | return WRC_Continue; } /* ** Walker callback used by sqlite3RenameExprUnmap(). */ static int renameUnmapSelectCb(Walker *pWalker, Select *p){ | < | | > > > > > > > > > > | | | 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 | return WRC_Continue; } /* ** Walker callback used by sqlite3RenameExprUnmap(). */ static int renameUnmapSelectCb(Walker *pWalker, Select *p){ Parse *pParse = pWalker->pParse; int i; if( ALWAYS(p->pEList) ){ ExprList *pList = p->pEList; for(i=0; i<pList->nExpr; i++){ if( pList->a[i].zName ){ sqlite3RenameTokenRemap(pParse, 0, (void*)pList->a[i].zName); } } } if( ALWAYS(p->pSrc) ){ /* Every Select as a SrcList, even if it is empty */ SrcList *pSrc = p->pSrc; for(i=0; i<pSrc->nSrc; i++){ sqlite3RenameTokenRemap(pParse, 0, (void*)pSrc->a[i].zName); } } return WRC_Continue; } /* ** Remove all nodes that are part of expression pExpr from the rename list. |
︙ | ︙ |
Changes to test/fuzzdata8.db.
cannot compute difference between binary files