]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
All regression tests now pass. But I am sure there must still be problems.
authordrh <drh@noemail.net>
Thu, 8 Sep 2005 00:13:27 +0000 (00:13 +0000)
committerdrh <drh@noemail.net>
Thu, 8 Sep 2005 00:13:27 +0000 (00:13 +0000)
New tests need to be added. (CVS 2666)

FossilOrigin-Name: bcc7d722cea4487a3adf9d9b2af4b74bfbfc5f39

manifest
manifest.uuid
src/build.c
src/select.c
src/vdbeapi.c
test/malloc.test

index 4ff1c1de793b5244e50aad90f7fcf16a7c93be77..3ed447c3d288ef8d160fba8364b15bd0e51d1f6a 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C More\sbug\sfixes.\s\sAll\sof\sthe\s"quick"\stests\spass.\s\sThe\sfull\stest\ssuite\sstill\nshows\sproblems.\s(CVS\s2665)
-D 2005-09-07T23:05:22
+C All\sregression\stests\snow\spass.\s\sBut\sI\sam\ssure\sthere\smust\sstill\sbe\sproblems.\nNew\stests\sneed\sto\sbe\sadded.\s(CVS\s2666)
+D 2005-09-08T00:13:27
 F Makefile.in 12784cdce5ffc8dfb707300c34e4f1eb3b8a14f1
 F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -34,7 +34,7 @@ F src/attach.c 4b21689700a72ae281fa85dbaff06b2a62bd49ee
 F src/auth.c 31e2304bef67f44d635655f44234387ea7d21454
 F src/btree.c 5b3bc015c49a41c025cfdf8ad36051f3007e2cb0
 F src/btree.h 1ed561263ca0e335bc3e81d761c9d5ff8c22f61e
-F src/build.c d9f3c0e65ada1087da21b524f6ef685e4d1a1725
+F src/build.c fcedb4baf328f7846c0c686d46d5c4d0d0842423
 F src/callback.c 9a1162c8f9dae9fad6d548339669aacb5f6cf76b
 F src/complete.c 4de937dfdd4c79a501772ab2035b26082f337a79
 F src/date.c 7444b0900a28da77e57e3337a636873cff0ae940
@@ -63,7 +63,7 @@ F src/pragma.c 69413fbdc0c6aaa493a776ea52c1b3e6cf35dfb2
 F src/prepare.c 86f0d8e744b8d956eff6bc40e29049efee017610
 F src/printf.c c01e9ad473d79463fb1f483b1eca5c3cbed2a4e5
 F src/random.c 90adff4e73a3b249eb4f1fc2a6ff9cf78c7233a4
-F src/select.c 4549cbef5d8bb98004374de533b6e45c5d73da6c
+F src/select.c 5f4a9396fc3b4f1d24224a4842737e708b13fb61
 F src/shell.c b21daba017b8feef2fdc65ecde57f70209494217
 F src/sqlite.h.in d6561d51025d08de4f455607f3f9f9aa76e855d5
 F src/sqliteInt.h b7d841739ce478a299e46db5ebcb510e833a36c5
@@ -83,7 +83,7 @@ F src/vacuum.c 829d9e1a6d7c094b80e0899686670932eafd768c
 F src/vdbe.c 1caa73395943e20c61cde11deedf05cb37847f87
 F src/vdbe.h c8e105979fc7aaf5b8004e9621904e3bd096dfa2
 F src/vdbeInt.h 3dd2a29c7b0a55404c35f93caae81fb42f4cb70a
-F src/vdbeapi.c 352f088f8e30385acfad7deee09edc4c73422129
+F src/vdbeapi.c 6df708808458df837100521be72e728a581b5206
 F src/vdbeaux.c 11db0de973c850bb5d92c67af1c8f3c189f08741
 F src/vdbefifo.c 9efb94c8c3f4c979ebd0028219483f88e57584f5
 F src/vdbemem.c e1da6b772e8a05e95ede8eb6f2f6d0ef4f2e1034
@@ -170,7 +170,7 @@ F test/lock.test 9b7afcb24f53d24da502abb33daaad2cd6d44107
 F test/lock2.test 59c3dd7d9b24d1bf7ec91b2d1541c37e97939d5f
 F test/lock3.test 615111293cf32aa2ed16d01c6611737651c96fb9
 F test/main.test 249f139ef2f75710db1b49bb79e8b27767eacae1
-F test/malloc.test 06d8dd2ed854693fc4e63b3e7dfd0fd8981cd628
+F test/malloc.test 666c77a878ce50f5c22b9211ed43e889cabb63a6
 F test/malloc2.test 655b972372d2754a3f6c6ed54d7cfd18fde9bd32
 F test/memdb.test 1860e060be810bf0775bc57408a5b7c4954bcaea
 F test/memleak.test df2b2b96e77f8ba159a332299535b1e5f18e49ac
@@ -306,7 +306,7 @@ F www/tclsqlite.tcl 3df553505b6efcad08f91e9b975deb2e6c9bb955
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 7e85a162d0ecf0acdbffcacc62b60d97fe123881
-R 923d357135fb2babd8d32ca5b7a07c70
+P a1b6d910cdbb53f12366402d9585dce2aad3ba3d
+R 798c4d51d5a5c7cc59df64f56a2ed72b
 U drh
-Z 70fc5ed7ff9adbf9e06aa3031cdb281a
+Z 7290bc3839b076b3e9d2d69315c82577
index da747fd053295c7216fd995444ba31fa09d201f2..177ce02eafee19b28987b5fa0828a4fde69fda8b 100644 (file)
@@ -1 +1 @@
-a1b6d910cdbb53f12366402d9585dce2aad3ba3d
\ No newline at end of file
+bcc7d722cea4487a3adf9d9b2af4b74bfbfc5f39
\ No newline at end of file
index b2be37aab505982eb2fe0aaee26c2019ffa98f24..e6c914c2441a6d488f7362e937640137f18ce8dd 100644 (file)
@@ -22,7 +22,7 @@
 **     COMMIT
 **     ROLLBACK
 **
-** $Id: build.c,v 1.345 2005/09/07 21:22:46 drh Exp $
+** $Id: build.c,v 1.346 2005/09/08 00:13:27 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -2496,11 +2496,13 @@ int sqlite3ArrayAllocate(void **ppArray, int szEntry, int initSize){
   int *an = (int*)&ppArray[1];
   if( an[0]>=an[1] ){
     void *pNew;
-    an[1] = an[1]*2 + initSize;
-    pNew = sqliteRealloc(*ppArray, an[1]*szEntry);
+    int newSize;
+    newSize = an[1]*2 + initSize;
+    pNew = sqliteRealloc(*ppArray, newSize*szEntry);
     if( pNew==0 ){
       return -1;
     }
+    an[1] = newSize;
     *ppArray = pNew;
   }
   p = *ppArray;
index be5dce3f083c620fbcce014dbced81cce82bbbaf..08d824198d0f5f3071105abbc46becbff828f189 100644 (file)
@@ -12,7 +12,7 @@
 ** This file contains C code routines that are called by the parser
 ** to handle SELECT statements in SQLite.
 **
-** $Id: select.c,v 1.263 2005/09/07 22:48:16 drh Exp $
+** $Id: select.c,v 1.264 2005/09/08 00:13:28 drh Exp $
 */
 #include "sqliteInt.h"
 
@@ -2800,6 +2800,7 @@ int sqlite3Select(
         goto select_end;
       }
     }
+    if( sqlite3_malloc_failed ) goto select_end;
 
     /* Processing for aggregates with GROUP BY is very different and
     ** much more complex tha aggregates without a GROUP BY.
@@ -2873,6 +2874,7 @@ int sqlite3Select(
       */
       sqlite3VdbeResolveLabel(v, addrInitializeLoop);
       pWInfo = sqlite3WhereBegin(pParse, pTabList, pWhere, &pGroupBy);
+      if( pWInfo==0 ) goto select_end;
       if( pGroupBy==0 ){
         /* The optimizer is able to deliver rows in group by order so
         ** we do not have to sort.  The OP_OpenVirtual table will be
@@ -2981,6 +2983,7 @@ int sqlite3Select(
       */
       resetAccumulator(pParse, &sAggInfo);
       pWInfo = sqlite3WhereBegin(pParse, pTabList, pWhere, 0);
+      if( pWInfo==0 ) goto select_end;
       updateAccumulator(pParse, &sAggInfo);
       sqlite3WhereEnd(pWInfo);
       finalizeAggFunctions(pParse, &sAggInfo);
index 2d94ba0a989617cac6efe71d6307d66bcf63ef2c..b32ae1de4b21d00f1348c2bb87a5465e50c729e8 100644 (file)
@@ -265,6 +265,7 @@ void *sqlite3_aggregate_context(sqlite3_context *p, int nByte){
       pMem->z = 0;
     }else{
       pMem->flags = MEM_Agg;
+      pMem->xDel = sqlite3FreeX;
       *(FuncDef**)&pMem->i = p->pFunc;
       if( nByte<=NBFS ){
         pMem->z = pMem->zShort;
index 420565f1d33c853a11c82776730acfd893a979f1..cdbf9f1f2ba438c36a601ab02ff1ab58b4f3d9b1 100644 (file)
@@ -14,7 +14,7 @@
 # special feature is used to see what happens in the library if a malloc
 # were to really fail due to an out-of-memory situation.
 #
-# $Id: malloc.test,v 1.23 2005/08/19 01:07:16 drh Exp $
+# $Id: malloc.test,v 1.24 2005/09/08 00:13:28 drh Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -56,7 +56,6 @@ proc do_malloc_test {tn args} {
 
   set ::go 1
   for {set ::n 1} {$::go} {incr ::n} {
-
     do_test malloc-$tn.$::n {
 
       sqlite_malloc_fail 0