Branch Coverage

trigger.c
Criterion Covered Total %
branch 2 182 1.1


line true false branch
19 0 0 while( pTriggerStep ){
23 0 0 if( pTmp->target.dyn ) sqliteFree((char*)pTmp->target.z);
66 0 0 if( sqlite_malloc_failed ) goto trigger_cleanup;
68 0 0 if( db->init.busy
69 0 0 && sqliteFixInit(&sFix, pParse, db->init.iDb, "trigger", pName)
70 0 0 && sqliteFixSrcList(&sFix, pTableName)
75 0 0 if( !tab ){
78 0 0 iDb = isTemp ? 1 : tab->iDb;
79 0 0 if( iDb>=2 && !db->init.busy ){
0 0 if( iDb>=2 && !db->init.busy ){
87 0 0 if( sqliteHashFind(&(db->aDb[iDb].trigHash), zName,pName->n+1) ){
91 0 0 if( sqliteStrNICmp(tab->zName, "sqlite_", 7)==0 ){
96 0 0 if( tab->pSelect && tr_tm != TK_INSTEAD ){
0 0 if( tab->pSelect && tr_tm != TK_INSTEAD ){
97 0 0 sqliteErrorMsg(pParse, "cannot create %s trigger on view: %S",
101 0 0 if( !tab->pSelect && tr_tm == TK_INSTEAD ){
0 0 if( !tab->pSelect && tr_tm == TK_INSTEAD ){
110 0 0 const char *zDbTrig = isTemp ? db->aDb[1].zName : zDb;
111 0 0 if( tab->iDb==1 || isTemp ) code = SQLITE_CREATE_TEMP_TRIGGER;
0 0 if( tab->iDb==1 || isTemp ) code = SQLITE_CREATE_TEMP_TRIGGER;
112 0 0 if( sqliteAuthCheck(pParse, code, zName, tab->zName, zDbTrig) ){
115 0 0 if( sqliteAuthCheck(pParse, SQLITE_INSERT, SCHEMA_TABLE(tab->iDb), 0, zDb)){
0 0 if( sqliteAuthCheck(pParse, SQLITE_INSERT, SCHEMA_TABLE(tab->iDb), 0, zDb)){
126 0 0 if (tr_tm == TK_INSTEAD){
132 0 0 if( nt==0 ) goto trigger_cleanup;
136 0 0 if( sqlite_malloc_failed ) goto trigger_cleanup;
168 0 0 if( pParse->nErr || pParse->pNewTrigger==0 ) goto triggerfinish_cleanup;
0 0 if( pParse->nErr || pParse->pNewTrigger==0 ) goto triggerfinish_cleanup;
172 0 0 while( pStepList ){
176 0 0 if( sqliteFixInit(&sFix, pParse, nt->iDb, "trigger", &nt->nameToken)
177 0 0 && sqliteFixTriggerStep(&sFix, nt->step_list) ){
184 0 0 if( !db->init.busy ){
200 0 0 if( v==0 ) goto triggerfinish_cleanup;
207 0 0 if( nt->iDb==0 ){
214 0 0 if( !pParse->explain ){
243 0 0 if( p->target.z ){
247 0 0 if( p->pSelect ){
252 0 0 if( p->pWhere ){
257 0 0 if( p->pExprList ){
262 0 0 if( p->pIdList ){
278 0 0 if( pTriggerStep==0 ) return 0;
303 0 0 if( pTriggerStep==0 ) return 0;
331 0 0 if( pTriggerStep==0 ) return 0;
350 0 0 if( pTriggerStep==0 ) return 0;
365 0 0 if( pTrigger==0 ) return;
371 0 0 if( pTrigger->nameToken.dyn ) sqliteFree((char*)pTrigger->nameToken.z);
396 0 0 if( sqlite_malloc_failed ) goto drop_trigger_cleanup;
401 0 0 for(i=0; inDb; i++){
402 0 0 int j = (i<2) ? i^1 : i; /* Search TEMP before MAIN */
403 0 0 if( zDb && sqliteStrICmp(db->aDb[j].zName, zDb) ) continue;
0 0 if( zDb && sqliteStrICmp(db->aDb[j].zName, zDb) ) continue;
405 0 0 if( pTrigger ) break;
407 0 0 if( !pTrigger ){
428 0 0 if( pTrigger->iDb>=2 ){
440 0 0 const char *zTab = SCHEMA_TABLE(pTrigger->iDb);
441 0 0 if( pTrigger->iDb ) code = SQLITE_DROP_TEMP_TRIGGER;
451 0 0 if( pTable!=0 && !nested && (v = sqliteGetVdbe(pParse))!=0 ){
0 0 if( pTable!=0 && !nested && (v = sqliteGetVdbe(pParse))!=0 ){
0 0 if( pTable!=0 && !nested && (v = sqliteGetVdbe(pParse))!=0 ){
469 0 0 if( pTrigger->iDb==0 ){
479 0 0 if( !pParse->explain ){
482 0 0 if( pTable->pTrigger == pTrigger ){
486 0 0 while( cc ){
487 0 0 if( cc->pNext == pTrigger ){
511 0 0 if( !pIdList || !pEList ) return 1;
0 0 if( !pIdList || !pEList ) return 1;
512 0 0 for(e=0; enExpr; e++){
513 0 0 if( sqliteIdListIndex(pIdList, pEList->a[e].zName)>=0 ) return 1;
543 0 100 if( always_code_trigger_setup ){
548 0 100 while( pTriggerCursor ){
549 0 0 if( pTriggerCursor->op == op &&
0 0 if( pTriggerCursor->op == op &&
550 0 0 pTriggerCursor->tr_tm == tr_tm &&
551 0 0 pTriggerCursor->foreach == foreach &&
555 0 0 while( ss && ss->pTrigger != pTrigger ){
0 0 while( ss && ss->pTrigger != pTrigger ){
558 0 0 if( !ss )return 1;
585 0 0 if( iDb==0 || iDb>=2 ){
0 0 if( iDb==0 || iDb>=2 ){
608 0 0 while( pTriggerStep ){
611 0 0 orconf = (orconfin == OE_Default)?pTriggerStep->orconf:orconfin;
699 0 0 while( pTrigger ){
703 0 0 if( pTrigger->op == op && pTrigger->tr_tm == tr_tm &&
0 0 if( pTrigger->op == op && pTrigger->tr_tm == tr_tm &&
0 0 if( pTrigger->op == op && pTrigger->tr_tm == tr_tm &&
707 0 0 while( pTriggerStack ){
708 0 0 if( pTriggerStack->pTrigger == pTrigger ){
713 0 0 if( op == TK_UPDATE && pTrigger->pColumns &&
719 0 0 if( fire_this && (pTriggerStack = sqliteMalloc(sizeof(TriggerStack)))!=0 ){
0 0 if( fire_this && (pTriggerStack = sqliteMalloc(sizeof(TriggerStack)))!=0 ){
740 0 0 if( sqliteExprResolveIds(pParse, &dummyTablist, 0, whenExpr) ){