diff options
author | stephan <stephan@noemail.net> | 2025-02-26 03:32:52 +0000 |
---|---|---|
committer | stephan <stephan@noemail.net> | 2025-02-26 03:32:52 +0000 |
commit | 69eaadbee3dc5912aba995288bfb20eeeb1222e6 (patch) | |
tree | 57dc2e0367a821171ea93add79f965300084042e /src/trigger.c | |
parent | d2f7dfa6190f529f7e543380b6663074e9078207 (diff) | |
parent | d804893762174d23017921ddbf233fa90ae5015f (diff) | |
download | sqlite-69eaadbee3dc5912aba995288bfb20eeeb1222e6.tar.gz sqlite-69eaadbee3dc5912aba995288bfb20eeeb1222e6.zip |
Merge trunk into the sahpool-digest branch.
FossilOrigin-Name: fc1eeb7d1f2880907b0fe71a8c572dd7cd74a5d65ec0177332976ad2f8c2b216
Diffstat (limited to 'src/trigger.c')
-rw-r--r-- | src/trigger.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/trigger.c b/src/trigger.c index e306a2e66..604c3ab42 100644 --- a/src/trigger.c +++ b/src/trigger.c @@ -70,7 +70,8 @@ Trigger *sqlite3TriggerList(Parse *pParse, Table *pTab){ assert( pParse->db->pVtabCtx==0 ); #endif assert( pParse->bReturning ); - assert( &(pParse->u1.pReturning->retTrig) == pTrig ); + assert( !pParse->isCreate ); + assert( &(pParse->u1.d.pReturning->retTrig) == pTrig ); pTrig->table = pTab->zName; pTrig->pTabSchema = pTab->pSchema; pTrig->pNext = pList; @@ -1047,7 +1048,8 @@ static void codeReturningTrigger( return; } assert( db->pParse==pParse ); - pReturning = pParse->u1.pReturning; + assert( !pParse->isCreate ); + pReturning = pParse->u1.d.pReturning; if( pTrigger != &(pReturning->retTrig) ){ /* This RETURNING trigger is for a different statement */ return; @@ -1277,6 +1279,8 @@ static TriggerPrg *codeRowTrigger( sSubParse.eTriggerOp = pTrigger->op; sSubParse.nQueryLoop = pParse->nQueryLoop; sSubParse.prepFlags = pParse->prepFlags; + sSubParse.oldmask = 0; + sSubParse.newmask = 0; v = sqlite3GetVdbe(&sSubParse); if( v ){ |