1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-12 13:01:09 +03:00

Add check to prevent a VList from growing after pointers to labels have been

taken.

FossilOrigin-Name: aa23d7eaf69f5ecbf9500b2353846094cae41e6c
This commit is contained in:
drh
2016-12-23 13:52:45 +00:00
parent f326d66d61
commit ce1bbe51b5
4 changed files with 32 additions and 17 deletions

View File

@@ -3422,6 +3422,7 @@ int sqlite3ExprCodeTarget(Parse *pParse, Expr *pExpr, int target){
if( pExpr->u.zToken[1]!=0 ){
const char *z = sqlite3VListNumToName(pParse->pVList, pExpr->iColumn);
assert( pExpr->u.zToken[0]=='?' || strcmp(pExpr->u.zToken, z)==0 );
pParse->pVList[0] = 0; /* Indicate VList may no longer be enlarged */
sqlite3VdbeAppendP4(v, (char*)z, P4_STATIC);
}
return target;