]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix unreachable branches resulting from prior optimizations.
authordrh <>
Fri, 3 Dec 2021 14:57:05 +0000 (14:57 +0000)
committerdrh <>
Fri, 3 Dec 2021 14:57:05 +0000 (14:57 +0000)
FossilOrigin-Name: f3d6853ee80be2dc6d7236d98b850beb0e1931a624d4f5b194c8db742cde7ec5

manifest
manifest.uuid
src/btree.c
src/whereexpr.c

index 1a4e57e525aa5a57f680d446a3b882bda87c2003..dc6fa4230815c86d00ed26270942ee3b1b4e8cb1 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\san\sover-length\ssource\scode\sline\sin\sbuild.c.\s\sNo\slogic\schanges.
-D 2021-12-03T14:43:49.562
+C Fix\sunreachable\sbranches\sresulting\sfrom\sprior\soptimizations.
+D 2021-12-03T14:57:05.912
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -491,7 +491,7 @@ F src/auth.c f4fa91b6a90bbc8e0d0f738aa284551739c9543a367071f55574681e0f24f8cf
 F src/backup.c 3014889fa06e20e6adfa0d07b60097eec1f6e5b06671625f476a714d2356513d
 F src/bitvec.c 7c849aac407230278445cb069bebc5f89bf2ddd87c5ed9459b070a9175707b3d
 F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6
-F src/btree.c be33f2b299c2d1dcdd6c033368731b81c13c2dbc72fe15af64a43871f6cdb437
+F src/btree.c 81feddbcc60d524518a7afc713b6dab0ad7caadb7370433f117c8c557dcdc889
 F src/btree.h 74d64b8f28cfa4a894d14d4ed64fa432cd697b98b61708d4351482ae15913e22
 F src/btreeInt.h ee9348c4cb9077243b049edc93a82c1f32ca48baeabf2140d41362b9f9139ff7
 F src/build.c 70759481a346322934332485381805c9ba9442bbe7959bf40bdc14140c832517
@@ -640,7 +640,7 @@ F src/walker.c f890a3298418d7cba3b69b8803594fdc484ea241206a8dfa99db6dd36f8cbb3b
 F src/where.c b50391df607937593596fbb8ea39f673d9a3715a65750567b442d22dd20720ca
 F src/whereInt.h 1630d9418512b080598e9a72b8af6b8bd1b9ab13fee1458f151762b6df206791
 F src/wherecode.c 1f5b62f46d284c8886945eb7438415bc27e23e87bb60b9ee468fa6bd31268f33
-F src/whereexpr.c ac082ec617802e7fc9c190aa0819696a7144a8aa0cad91948323b83720e5105c
+F src/whereexpr.c 779b3230a76510de63f5d45e47df931be05320a8f290c287130a30344c73ea1f
 F src/window.c 5d3b397b0c026d0ff5890244ac41359e524c01ae31e78782e1ff418c3e271a9e
 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
 F test/affinity2.test ce1aafc86e110685b324e9a763eab4f2a73f737842ec3b687bd965867de90627
@@ -1933,7 +1933,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 9df939716ace8cfe60340bbe83fc52d452ea40c29c856c588f9a1b8973282391
-R 9393106c7ba9e646319a5d3ddfef6c69
+P b9db5c5fc618a36d70ea2aced9c96094d665935b5c15a987013334f1bd79eb00
+R 62fc2562c9bdca584bc5f7af404e360c
 U drh
-Z 97067e9e4125723429bb82f48b4944e2
+Z a47d8ad1f6786c210062821f95b3efde
index e4938138ce2e595568ca5c24cd34a933a76a826a..a6d9596b1b801b38a0dd924e8ccea3c80d09e2cd 100644 (file)
@@ -1 +1 @@
-b9db5c5fc618a36d70ea2aced9c96094d665935b5c15a987013334f1bd79eb00
\ No newline at end of file
+f3d6853ee80be2dc6d7236d98b850beb0e1931a624d4f5b194c8db742cde7ec5
\ No newline at end of file
index 7dfce901ab8a3fbafa1479df51b71b59876c87cc..5060140731a884b81e472efd15d2cf6b325674b7 100644 (file)
@@ -2722,10 +2722,8 @@ static SQLITE_NOINLINE int allocateTempSpace(BtShared *pBt){
   ** beginning of pTmpSpace as an area available to prepend the
   ** left-child pointer to the beginning of a cell.
   */
-  if( pBt->pTmpSpace ){
-    memset(pBt->pTmpSpace, 0, 8);
-    pBt->pTmpSpace += 4;
-  }
+  memset(pBt->pTmpSpace, 0, 8);
+  pBt->pTmpSpace += 4;
   return SQLITE_OK;
 }
 
index 542114e91dbf0a8b4faafc8d0ac185839ccbeef7..852c56f385563aa0ea4e4cc21c03967b53d085ee 100644 (file)
@@ -1090,7 +1090,7 @@ static void exprAnalyze(
     prereqAll = prereqLeft | pTerm->prereqRight;
   }else{
     pTerm->prereqRight = sqlite3WhereExprUsage(pMaskSet, pExpr->pRight);
-    if( pExpr->pLeft==0 || ExprUseXSelect(pExpr) || pExpr->x.pList!=0 ){
+    if( pExpr->pLeft==0 || NEVER(ExprUseXSelect(pExpr)) || pExpr->x.pList!=0 ){
       prereqAll = sqlite3WhereExprUsageNN(pMaskSet, pExpr);
     }else{
       prereqAll = prereqLeft | pTerm->prereqRight;