From: drh Date: Mon, 26 Dec 2016 01:41:33 +0000 (+0000) Subject: Remove an incorrect ALWAYS() macro from balance_nonroot(), which could result X-Git-Tag: version-3.16.0~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9cc5b4eeb5deb3c3348e6e51e205d79a50334748;p=thirdparty%2Fsqlite.git Remove an incorrect ALWAYS() macro from balance_nonroot(), which could result in corrupt databases if it were optimized out. This ALWAYS was added only two weeks ago (check-in [f9f2e23bbd68a]) and has never appeared in an official release. FossilOrigin-Name: e447b23cfd7bb31817e42adb3a98868d351c6b8a --- diff --git a/manifest b/manifest index 2e7abd7f9e..c16355bf4f 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Enhance\sthe\sfuzztest\sutility\swith\sthe\s--prng-seed\soption.\s\sAlways\sreseed\sthe\nPRNG\sprior\sto\seach\stest. -D 2016-12-26T00:15:56.766 +C Remove\san\sincorrect\sALWAYS()\smacro\sfrom\sbalance_nonroot(),\swhich\scould\sresult\nin\scorrupt\sdatabases\sif\sit\swere\soptimized\sout.\s\sThis\sALWAYS\swas\sadded\s\nonly\stwo\sweeks\sago\s(check-in\s[f9f2e23bbd68a])\sand\shas\snever\sappeared\sin\san\nofficial\srelease. +D 2016-12-26T01:41:33.072 F Makefile.in 41bd4cad981487345c4a84081074bcdb876e4b2e F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da @@ -331,7 +331,7 @@ F src/auth.c 930b376a9c56998557367e6f7f8aaeac82a2a792 F src/backup.c faf17e60b43233c214aae6a8179d24503a61e83b F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c bc87dd3b062cc26edfe79918de2200ccb8d41e73 -F src/btree.c 2e07a5a6d705c1439392460f4044ea4179d9cd40 +F src/btree.c d2c100618784bd89c089fcef03ff6e789768ecae F src/btree.h 2349a588abcd7e0c04f984e15c5c777b61637583 F src/btreeInt.h 10c4b77c2fb399580babbcc7cf652ac10dba796e F src/build.c 9e799f1edd910dfa8a0bc29bd390d35d310596af @@ -1539,7 +1539,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P def29333655691c7d54451193be13445a2857d29 -R e04e5338dd0157c18f4661e2b40e485c +P 8c5187f69d719b69aa6eaf2dc8f89243e5979222 +R 8f159ac0828ffa15fefdcbf0386259c4 U drh -Z 34d4889fdc22385ba735ec50d68d537d +Z 7c774566c7c911446145658eecf4799d diff --git a/manifest.uuid b/manifest.uuid index ab702bb52d..7a7a6d9726 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -8c5187f69d719b69aa6eaf2dc8f89243e5979222 \ No newline at end of file +e447b23cfd7bb31817e42adb3a98868d351c6b8a \ No newline at end of file diff --git a/src/btree.c b/src/btree.c index d2fd448f68..f869761625 100644 --- a/src/btree.c +++ b/src/btree.c @@ -7077,7 +7077,7 @@ static int balance_nonroot( nMaxCells += 1+apOld[i]->nCell+apOld[i]->nOverflow; if( (i--)==0 ) break; - if( pParent->nOverflow && ALWAYS(i+nxDiv==pParent->aiOvfl[0]) ){ + if( pParent->nOverflow && i+nxDiv==pParent->aiOvfl[0] ){ apDiv[i] = pParent->apOvfl[0]; pgno = get4byte(apDiv[i]); szNew[i] = pParent->xCellSize(pParent, apDiv[i]);