From: drh Date: Tue, 24 Aug 2010 02:10:17 +0000 (+0000) Subject: Cherrypick the R-tree invalid shadow-table big fix of X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=39e3ca05be089f73f9e2a2ae84d944448ee701d5;p=thirdparty%2Fsqlite.git Cherrypick the R-tree invalid shadow-table big fix of [7f2f71cc9e3c39093f09231f44] into the apple-osx 3.6.23 branch. FossilOrigin-Name: 68103d91d483ae59f64b08159e8376d1c2dd5478 --- diff --git a/ext/rtree/rtree.c b/ext/rtree/rtree.c index 57a843d91b..16d8bbccf1 100644 --- a/ext/rtree/rtree.c +++ b/ext/rtree/rtree.c @@ -439,8 +439,11 @@ nodeAcquire( pRtree->iDepth = readInt16(pNode->zData); } - assert( (rc==SQLITE_OK && pNode) || (pNode==0 && rc!=SQLITE_OK) ); - nodeHashInsert(pRtree, pNode); + if( pNode!=0 ){ + nodeHashInsert(pRtree, pNode); + }else if( rc==SQLITE_OK ){ + rc = SQLITE_CORRUPT; + } return rc; } diff --git a/manifest b/manifest index a4e145432e..53121ac192 100644 --- a/manifest +++ b/manifest @@ -1,8 +1,8 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -C Cherrypick\sthe\sincremental_vacuum\sbug\sfix\s([255f1eefa373153942c67b18b])\sinto\nthe\sapple-osx\s3.6.23\sbranch. -D 2010-08-24T01:59:56 +C Cherrypick\sthe\sR-tree\sinvalid\sshadow-table\sbig\sfix\sof\n[7f2f71cc9e3c39093f09231f44]\sinto\sthe\sapple-osx\s3.6.23\sbranch. +D 2010-08-24T02:10:17 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in b12be4429b75eca982a5646752652efde58e8f29 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -77,7 +77,7 @@ F ext/icu/README.txt 3b130aa66e7a681136f6add198b076a2f90d1e33 F ext/icu/icu.c 850e9a36567bbcce6bd85a4b68243cad8e3c2de2 F ext/icu/sqliteicu.h 728867a802baa5a96de7495e9689a8e01715ef37 F ext/rtree/README 6315c0d73ebf0ec40dedb5aa0e942bc8b54e3761 -F ext/rtree/rtree.c dc26ef90f81fe983a72e0ad787da1e7e9d3a6b86 +F ext/rtree/rtree.c 2e5810ef3c8e778e46f48485722e04370b9ddbc2 F ext/rtree/rtree.h 834dbcb82dc85b2481cde6a07cdadfddc99e9b9e F ext/rtree/rtree1.test f72885ed80a329d6bd7991043016d74b51edf2c5 F ext/rtree/rtree2.test 7b665c44d25e51b3098068d983a39902b2e2d7a1 @@ -800,14 +800,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f -P 220cca50da08c5166afa3d2364fdf7f8e7308836 -R 53cff399f9385e49cbb3330e864858d1 +P 60f16838ccee05b5070d9640742fcc8da1b12137 +R f0fc88703d92606cac9ed7a138779b6f U drh -Z c43f6854461e2a577ea65066711f8188 +Z 03d48fba031c4d115cebbdf306b9fcae -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) -iD8DBQFMcyefoxKgR168RlERAismAJ98pUiMf/A6i2i7jlUyImdIiWAKNQCfRHwH -bZggWdZ6/Ce7kdRRmLfxAFU= -=4R4g +iD8DBQFMcyoMoxKgR168RlERAsk9AJ9RXjQUvpNb6SPI/i6Yp22iywzp7QCcCz3I +gV82Wa4ExwX0ApPrIew4XVA= +=xgYB -----END PGP SIGNATURE----- diff --git a/manifest.uuid b/manifest.uuid index 43a9c6f093..831f4fada2 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -60f16838ccee05b5070d9640742fcc8da1b12137 \ No newline at end of file +68103d91d483ae59f64b08159e8376d1c2dd5478 \ No newline at end of file