aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordanielk1977 <danielk1977@noemail.net>2007-05-12 10:41:47 +0000
committerdanielk1977 <danielk1977@noemail.net>2007-05-12 10:41:47 +0000
commit39c9604a02179779d34591305d2cfc0a0a91c5d3 (patch)
tree61927165e008a316034a1a74bff1132b503c83c6 /src
parent4aeff62ee0f978c5498db02c8961fbaedff86f57 (diff)
downloadsqlite-39c9604a02179779d34591305d2cfc0a0a91c5d3.tar.gz
sqlite-39c9604a02179779d34591305d2cfc0a0a91c5d3.zip
Fix another variant of the "IN (...)" b-tree problem. (CVS 3988)
FossilOrigin-Name: 260338c4b2b18c9f4da8bc7fe3eda306dcaa4e38
Diffstat (limited to 'src')
-rw-r--r--src/btree.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/btree.c b/src/btree.c
index 2c0f0dfc3..5efdcc1da 100644
--- a/src/btree.c
+++ b/src/btree.c
@@ -9,7 +9,7 @@
** May you share freely, never taking more than you give.
**
*************************************************************************
-** $Id: btree.c,v 1.380 2007/05/12 09:30:47 danielk1977 Exp $
+** $Id: btree.c,v 1.381 2007/05/12 10:41:48 danielk1977 Exp $
**
** This file implements a external (disk-based) database using BTrees.
** See the header comment on "btreeInt.h" for additional information.
@@ -4510,6 +4510,10 @@ static int balance_nonroot(MemPage *pPage){
memcpy(apCell[nCell], &pOld->aData[pOld->hdrOffset+8], 4);
}else{
assert( leafCorrection==4 );
+ if( szCell[nCell]<4 ){
+ /* Do not allow any cells smaller than 4 bytes. */
+ szCell[nCell] = 4;
+ }
}
nCell++;
}