1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-10-27 08:52:26 +03:00

Fix an assertion failure due to interaction between the count_changes pragma and triggers. (CVS 2187)

FossilOrigin-Name: 6c7bec1b3aee0287e30f43c1d6a7b67b1c47e774
This commit is contained in:
danielk1977
2005-01-10 02:48:49 +00:00
parent 49766d6cd0
commit cc6bd38380
5 changed files with 72 additions and 15 deletions

View File

@@ -12,7 +12,7 @@
** This file contains C code routines that are called by the parser
** to handle INSERT statements in SQLite.
**
** $Id: insert.c,v 1.128 2004/12/07 15:41:49 drh Exp $
** $Id: insert.c,v 1.129 2005/01/10 02:48:49 danielk1977 Exp $
*/
#include "sqliteInt.h"
@@ -693,7 +693,7 @@ void sqlite3Insert(
** generating code because of a call to sqlite3NestedParse(), do not
** invoke the callback function.
*/
if( db->flags & SQLITE_CountRows && pParse->nested==0 ){
if( db->flags & SQLITE_CountRows && pParse->nested==0 && !pParse->trigStack ){
sqlite3VdbeAddOp(v, OP_MemLoad, iCntMem, 0);
sqlite3VdbeAddOp(v, OP_Callback, 1, 0);
sqlite3VdbeSetNumCols(v, 1);