diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/trigger.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/trigger.c b/src/trigger.c index baf78eb8c..6a3498c45 100644 --- a/src/trigger.c +++ b/src/trigger.c @@ -740,7 +740,7 @@ Trigger *sqlite3TriggersExist( for(p=pList; p; p=p->pNext){ if( p->op==op && checkColumnOverlap(p->pColumns, pChanges) ){ mask |= p->tr_tm; - }else if( p->bReturning ){ + }else if( p->bReturning && (p->op==TK_RETURNING || p->op!=TK_DELETE) ){ p->op = op; mask |= TRIGGER_AFTER; } @@ -1217,7 +1217,7 @@ void sqlite3CodeRowTrigger( || p->pSchema==pParse->db->aDb[1].pSchema ); /* Determine whether we should code this trigger */ - if( (p->op==op || p->bReturning) + if( (p->op==op || (p->bReturning && p->op!=TK_DELETE)) && p->tr_tm==tr_tm && checkColumnOverlap(p->pColumns, pChanges) ){ |