-C The\ssqlite3_trace()\scallback\snow\sprints\sa\smessage\sas\seach\strigger\sfires\nwithin\sa\sstatement.\s(CVS\s4709)
-D 2008-01-12T21:35:57
+C Fix\ssome\sissues\swith\sout-of-memory\srecovery.\s(CVS\s4710)
+D 2008-01-13T19:02:11
F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
F Makefile.in 30789bf70614bad659351660d76b8e533f3340e9
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
F src/date.c 49c5a6d2de6c12000905b4d36868b07d3011bbf6
F src/delete.c 00e536847b8eedc5d35f89f7f38a8a7c1d2a22f9
F src/experimental.c 1b2d1a6cd62ecc39610e97670332ca073c50792b
-F src/expr.c 14130c27fba6fa3c14dcfc4891c534a8ee71cc3c
+F src/expr.c be1018f2911bd93e6fc34f216ed263ce733569b6
F src/func.c 996071cf0af9d967e58b69fce1909555059ebc7d
F src/hash.c 45a7005aac044b6c86bd7e49c44bc15d30006d6c
F src/hash.h 031cd9f915aff27e12262cb9eb570ac1b8326b53
F src/prepare.c c31a879d6795f4765fd0b113675c6debbc96b7fd
F src/printf.c eb27822ba2eec669161409ca31279a24c26ac910
F src/random.c 4a22746501bf36b0a088c66e38dde5daba6a35da
-F src/select.c 34c138d90771a5919fa181f7ddde75277d6a9fc6
+F src/select.c 16ba6ec0b3de4971579e66964ba2f25e0b43c78b
F src/server.c 087b92a39d883e3fa113cae259d64e4c7438bc96
F src/shell.c 5391e889384d2062249f668110d64ed16f601c4b
F src/sqlite.h.in 2a7e3776534bbe6ff2cdc058f3abebe91e7e429f
F src/test_tclvar.c b2d1115e4d489179d3f029e765211b2ad527ba59
F src/test_thread.c e297dd41db0b249646e69f97d36ec13e56e8b730
F src/tokenize.c a4e04438c11fed2c67ec47fe3edbef9cca2d1b48
-F src/trigger.c da3e11df34d34c4341d9417d8033facbae16d9e8
+F src/trigger.c 3a863b9952164ab5de58406c26daf06144bbddc4
F src/update.c aad823f97a930e6982264299863837d4c6107d3b
F src/utf.c ef4b7d83bae533b76c3e1bf635b113fdad86a736
F src/util.c 05f31144bbd3f1a24f4139ae029c42545cb72624
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
-P 426f31ecdd05d1179a2e49c2ca1666011cede9c6
-R 3435d52d4f2b4750bec1183c99c98b94
+P 110c000d86bd4a0b4b946c62d11a435426b02d16
+R f95030f95502c6367aca6894c92c5e05
U drh
-Z 0d14628a3647710d605d98d6d56b6e09
+Z 562fbfe4435b61e96b57af5488c68d5b
-110c000d86bd4a0b4b946c62d11a435426b02d16
\ No newline at end of file
+23181f86896e7c9e993e00032e735e67ee6b2e71
\ No newline at end of file
** This file contains routines used for analyzing expressions and
** for generating VDBE code that evaluates expressions in SQLite.
**
-** $Id: expr.c,v 1.344 2008/01/12 19:03:49 drh Exp $
+** $Id: expr.c,v 1.345 2008/01/13 19:02:11 drh Exp $
*/
#include "sqliteInt.h"
#include <ctype.h>
*/
int sqlite3ExprCode(Parse *pParse, Expr *pExpr, int target){
int inReg = sqlite3ExprCodeTarget(pParse, pExpr, target);
- if( inReg!=target ){
+ assert( pParse->pVdbe || pParse->db->mallocFailed );
+ if( inReg!=target && pParse->pVdbe ){
sqlite3VdbeAddOp2(pParse->pVdbe, (inReg>0 ? OP_SCopy : OP_Move),
inReg, target);
}
** This file contains C code routines that are called by the parser
** to handle SELECT statements in SQLite.
**
-** $Id: select.c,v 1.400 2008/01/12 21:35:57 drh Exp $
+** $Id: select.c,v 1.401 2008/01/13 19:02:11 drh Exp $
*/
#include "sqliteInt.h"
flag = minMaxQuery(pParse, p);
if( flag ){
pMinMax = sqlite3ExprListDup(db, p->pEList->a[0].pExpr->pList);
- if( pMinMax ){
+ if( pMinMax && !db->mallocFailed ){
pMinMax->a[0].sortOrder = ((flag==ORDERBY_MIN)?0:1);
pMinMax->a[0].pExpr->op = TK_COLUMN;
pDel = pMinMax;
u32 *piNewColMask /* OUT: Mask of columns used from the NEW.* table */
){
Trigger *p;
+ sqlite3 *db = pParse->db;
TriggerStack trigStackEntry;
trigStackEntry.oldColMask = 0;
for(p=pTab->pTrigger; p; p=p->pNext){
int fire_this = 0;
- sqlite3 *db = pParse->db;
/* Determine whether we should code this trigger */
if(
#ifndef SQLITE_OMIT_TRACE
sqlite3VdbeAddOp4(pParse->pVdbe, OP_Trace, 0, 0, 0,
- sqlite3_mprintf("-- TRIGGER %s", p->name),
+ sqlite3MPrintf(db, "-- TRIGGER %s", p->name),
P4_DYNAMIC);
#endif
memset(&sNC, 0, sizeof(sNC));