-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
-C Further\ssimplifications\sto\sthe\sVDBE\s-\sremoving\sfunctionality\sthat\sis\sno\slonger\nused.
-D 2009-09-08T02:27:59
+C Additional\ssimplifications\sin\ssupport\sof\sstructural\stesting.
+D 2009-09-08T13:40:17
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 73ddeec9dd10b85876c5c2ce1fdce627e1dcc7f8
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
F src/hash.c ebcaa921ffd9d86f7ea5ae16a0a29d1c871130a7
F src/hash.h 35b216c13343d0b4f87d9f21969ac55ad72174e1
F src/hwtime.h 4a1d45f4cae1f402ea19686acf24acf4f0cb53cb
-F src/insert.c c90b07a1c8c8c31f55ad906cc3fc2de10ba182dd
+F src/insert.c 06fe504934bdd3b3a0fa0e11ccd6506b57114c52
F src/journal.c e00df0c0da8413ab6e1bb7d7cab5665d4a9000d0
F src/legacy.c 303b4ffcf1ae652fcf5ef635846c563c254564f6
F src/lempar.c 0c4d1ab0a5ef2b0381eb81a732c54f68f27a574d
F src/vdbeapi.c 8d5013ab6104be757c208a70ffb191cc27d2b688
F src/vdbeaux.c ec1545ece73dd739c9043f14963fb3f20d3880d6
F src/vdbeblob.c f93cb60ac388633ed3bde8a94ef161ad2dbfb689
-F src/vdbemem.c dc551981833756ea34a3e0b238f759479e7cf526
+F src/vdbemem.c 0ff2b209fccade3ff6709286057b82ed7f6c1e70
F src/vtab.c 3e54fe39374e5feb8b174de32a90e7a21966025d
F src/walker.c 1edca756275f158b80f20eb6f104c8d3fcc96a04
F src/where.c 15b38ff11d83f749ac61ef2ab5ad7ddbee273d69
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 52449a9569b7142095cc88ee208b31cc59a3cab4
-R 70ed5c4db2b466a473f539b4376c4de5
+P b271e16621831957468a1d3925174aac73f58891
+R 8c612cb15dd060090bb2d4d886dee584
U drh
-Z 1c9033f2b3acc52071f7550f08e29c55
+Z a9d8abd000fb942a5d5935b1dbcc5c31
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
-iD8DBQFKpcEyoxKgR168RlERAlSiAJ0WnXRYxzLIp2BXv1Jfr5O1NvTtcACfcOtd
-GJCQQ1LtgkqS/MBnZmt2PXw=
-=MZwN
+iD8DBQFKpl7EoxKgR168RlERArvgAJ9VIhI4NUVMwROuivJoGqBtHQo34ACdFY4R
+tYb9IFwgX3mkui92z9PMIsY=
+=tFOy
-----END PGP SIGNATURE-----
int addr; /* A VDBE address */
Vdbe *v = pParse->pVdbe; /* VDBE under construction */
- /* If currently generating a trigger program, this call is a no-op */
- if( pParse->pTriggerTab ) return;
+ /* This routine is never called during trigger-generation. It is
+ ** only called from the top-level */
+ assert( pParse->pTriggerTab==0 );
+ assert( pParse==sqlite3ParseToplevel(pParse) );
assert( v ); /* We failed long ago if this is not so */
for(p = pParse->pAinc; p; p = p->pNext){
*/
void sqlite3VdbeMemReleaseExternal(Mem *p){
assert( p->db==0 || sqlite3_mutex_held(p->db->mutex) );
+ testcase( p->flags & MEM_Agg );
+ testcase( p->flags & MEM_Dyn );
+ testcase( p->flags & MEM_RowSet );
+ testcase( p->flags & MEM_Frame );
if( p->flags&(MEM_Agg|MEM_Dyn|MEM_RowSet|MEM_Frame) ){
if( p->flags&MEM_Agg ){
sqlite3VdbeMemFinalize(p, p->u.pDef);
}else if( p->flags&MEM_RowSet ){
sqlite3RowSetClear(p->u.pRowSet);
}else if( p->flags&MEM_Frame ){
- sqlite3VdbeFrameDelete(p->u.pFrame);
- p->flags &= ~MEM_Frame;
+ sqlite3VdbeMemSetNull(p);
}
}
}