diff options
author | danielk1977 <danielk1977@noemail.net> | 2009-02-19 14:39:25 +0000 |
---|---|---|
committer | danielk1977 <danielk1977@noemail.net> | 2009-02-19 14:39:25 +0000 |
commit | 6ab3a2ec8a7a21f8eb607679875e3193e6d16f4c (patch) | |
tree | 58e9ac88aa2cd60f02228baeda46b9c16eb6d5a9 /src/delete.c | |
parent | 076d4661a68f67dbabc421eab124fe5908ebbeee (diff) | |
download | sqlite-6ab3a2ec8a7a21f8eb607679875e3193e6d16f4c.tar.gz sqlite-6ab3a2ec8a7a21f8eb607679875e3193e6d16f4c.zip |
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305)
FossilOrigin-Name: d9f6ffbc5ea090ba0daac571fc9a6c68b9c864e4
Diffstat (limited to 'src/delete.c')
-rw-r--r-- | src/delete.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/delete.c b/src/delete.c index eb683f59b..abc2ea07b 100644 --- a/src/delete.c +++ b/src/delete.c @@ -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.191 2008/12/23 23:56:22 drh Exp $ +** $Id: delete.c,v 1.192 2009/02/19 14:39:25 danielk1977 Exp $ */ #include "sqliteInt.h" @@ -99,12 +99,12 @@ void sqlite3MaterializeView( Select *pDup; sqlite3 *db = pParse->db; - pDup = sqlite3SelectDup(db, pView->pSelect); + pDup = sqlite3SelectDup(db, pView->pSelect, 0); if( pWhere ){ SrcList *pFrom; Token viewName; - pWhere = sqlite3ExprDup(db, pWhere); + pWhere = sqlite3ExprDup(db, pWhere, 0); viewName.z = (u8*)pView->zName; viewName.n = (unsigned int)sqlite3Strlen30((const char*)viewName.z); pFrom = sqlite3SrcListAppendFromTerm(pParse, 0, 0, 0, &viewName, pDup, 0,0); @@ -174,7 +174,7 @@ Expr *sqlite3LimitWhere( /* duplicate the FROM clause as it is needed by both the DELETE/UPDATE tree ** and the SELECT subtree. */ - pSelectSrc = sqlite3SrcListDup(pParse->db, pSrc); + pSelectSrc = sqlite3SrcListDup(pParse->db, pSrc, 0); if( pSelectSrc == 0 ) { sqlite3ExprListDelete(pParse->db, pEList); goto limit_where_cleanup_2; |