1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-06 15:49:35 +03:00

Try to find some more stack leaks by adding OP_StackDepth to loops in DML statements. None were found. (CVS 4617)

FossilOrigin-Name: 12c3029b1edcff4435177c709fb2584323f8c515
This commit is contained in:
danielk1977
2007-12-12 17:42:53 +00:00
parent 6811e399ff
commit 997a904016
5 changed files with 17 additions and 12 deletions

View File

@@ -12,7 +12,7 @@
** This file contains C code routines that are called by the parser
** in order to generate code for DELETE FROM statements.
**
** $Id: delete.c,v 1.133 2007/12/12 17:19:27 danielk1977 Exp $
** $Id: delete.c,v 1.134 2007/12/12 17:42:53 danielk1977 Exp $
*/
#include "sqliteInt.h"
@@ -277,6 +277,7 @@ void sqlite3DeleteFrom(
if( triggers_exist ){
int mem1 = pParse->nMem++;
addr = sqlite3VdbeAddOp(v, OP_FifoRead, 0, end);
sqlite3VdbeAddOp(v, OP_StackDepth, -1, 0);
sqlite3VdbeAddOp(v, OP_MemStore, mem1, 0);
if( !isView ){
sqlite3OpenTable(pParse, iCur, iDb, pTab, OP_OpenRead);
@@ -310,6 +311,7 @@ void sqlite3DeleteFrom(
** row triggers */
if( !triggers_exist ){
addr = sqlite3VdbeAddOp(v, OP_FifoRead, 0, end);
sqlite3VdbeAddOp(v, OP_StackDepth, -1, 0);
}
/* Delete the row */