]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Extra asserts to prove that certain reported errors in btree.c are not really
authordrh <drh@noemail.net>
Tue, 28 Mar 2006 00:24:44 +0000 (00:24 +0000)
committerdrh <drh@noemail.net>
Tue, 28 Mar 2006 00:24:44 +0000 (00:24 +0000)
errors. (CVS 3155)

FossilOrigin-Name: c64542d0e8efd6daecb037009474f4448793e4c0

manifest
manifest.uuid
src/btree.c

index 60c7aebf33b270e19f46eeefeb61ee42f6873273..edfaaa44c56cd0250345cb74b25c8245499adba0 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Work\saround\sa\sbug\sin\sGCC\s4.0.2.\s(CVS\s3154)
-D 2006-03-26T20:49:18
+C Extra\sasserts\sto\sprove\sthat\scertain\sreported\serrors\sin\sbtree.c\sare\snot\sreally\nerrors.\s(CVS\s3155)
+D 2006-03-28T00:24:45
 F Makefile.in 5d8dff443383918b700e495de42ec65bc1c8865b
 F Makefile.linux-gcc 74ba0eadf88748a9ce3fd03d2a3ede2e6715baec
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -34,7 +34,7 @@ F src/alter.c 451b34fc4eb2475ca76a2e86b21e1030a9428091
 F src/analyze.c 7d2b7ab9a9c2fd6e55700f69064dfdd3e36d7a8a
 F src/attach.c d73a3505de3fb9e373d0a158978116c4212031d0
 F src/auth.c 9ae84d2d94eb96195e04515715e08e85963e96c2
-F src/btree.c 582f0fb985c3dc209d2904639dd2c3c4544ba90e
+F src/btree.c 05cff8249bcc1a15e19c6b9ade871844682b8a0f
 F src/btree.h 40055cfc09defd1146bc5b922399c035f969e56d
 F src/build.c be0629119df8c1e09050a8fcbf182112f00e3b14
 F src/callback.c d8c5ab1cd6f3b7182b2ee63bf53f1b69c0f74306
@@ -355,7 +355,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 80cda9f7ce83f2de6cd2fdaf6150bbc35b670fee
-R d92806f8ad5b57a82422a1562ac3eefb
+P fe0920c7922bfdbefbc0107fb9170d98bec2dcef
+R 444a3e4a4674aa9d8e71f6503c2669c2
 U drh
-Z cb468a32b49079c6cdf556c3d07ea774
+Z 3c3d6534961b5bfe4745ed9f24024a53
index a057a4d38fe6b72f38a0d3c0afe5bc769ce87bc6..2058858022c2ba2d1e74a738b3b8a366fd2e79a8 100644 (file)
@@ -1 +1 @@
-fe0920c7922bfdbefbc0107fb9170d98bec2dcef
\ No newline at end of file
+c64542d0e8efd6daecb037009474f4448793e4c0
\ No newline at end of file
index 35b3419bf0cbadda8b4749ca30d92cc53cc04b1a..d662f6b250453472ab1d95d90c14665ba2f43d24 100644 (file)
@@ -9,7 +9,7 @@
 **    May you share freely, never taking more than you give.
 **
 *************************************************************************
-** $Id: btree.c,v 1.322 2006/03/23 14:03:00 drh Exp $
+** $Id: btree.c,v 1.323 2006/03/28 00:24:45 drh Exp $
 **
 ** This file implements a external (disk-based) database using BTrees.
 ** For a detailed discussion of BTrees, refer to
@@ -4825,6 +4825,7 @@ static int balance_nonroot(MemPage *pPage){
       rc = sqlite3pager_write(pNew->aData);
       if( rc ) goto balance_cleanup;
     }else{
+      assert( i>0 );
       rc = allocatePage(pBt, &pNew, &pgnoNew[i], pgnoNew[i-1], 0);
       if( rc ) goto balance_cleanup;
       apNew[i] = pNew;
@@ -4976,6 +4977,8 @@ static int balance_nonroot(MemPage *pPage){
     }
   }
   assert( j==nCell );
+  assert( nOld>0 );
+  assert( nNew>0 );
   if( (pageFlags & PTF_LEAF)==0 ){
     memcpy(&apNew[nNew-1]->aData[8], &apCopy[nOld-1]->aData[8], 4);
   }