]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix an assert in the automatic-index constructor that can be false following
authordrh <>
Wed, 7 Apr 2021 12:36:58 +0000 (12:36 +0000)
committerdrh <>
Wed, 7 Apr 2021 12:36:58 +0000 (12:36 +0000)
an OOM error.  dbsqlfuzz ee04d66c627ed5b5301e0ce09e24db47e0f1544e.

FossilOrigin-Name: cc6463fe6d23febeea5171f9a1bcb1e5f980f7f44b7e85022d5fd8662b471160

manifest
manifest.uuid
src/where.c

index 240f1c885591619fa081f7b0655e1d0eb0f7b0e0..a93f12e47f53d062d0791c7e86c0c191742867c6 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Earlier\sdetection\sof\spage\s1\son\sthe\sfreelist\s(which\sis\simpossible)\sand\nreporting\sof\sthat\sas\sdatabase\scorruption.\ndbsqlfuzz\s6fe6c504b320be5e3eed66896cb0db28bfb38a93.
-D 2021-04-07T12:21:35.565
+C Fix\san\sassert\sin\sthe\sautomatic-index\sconstructor\sthat\scan\sbe\sfalse\sfollowing\nan\sOOM\serror.\s\sdbsqlfuzz\see04d66c627ed5b5301e0ce09e24db47e0f1544e.
+D 2021-04-07T12:36:58.610
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -629,7 +629,7 @@ F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
 F src/wal.c 69e770e96fd56cc21608992bf2c6f1f3dc5cf2572d0495c6a643b06c3a679f14
 F src/wal.h c3aa7825bfa2fe0d85bef2db94655f99870a285778baa36307c0a16da32b226a
 F src/walker.c d42d6c80ea363ef689a462e65eefcfe87deab924c50de5baa37ecb6af7d7ddaa
-F src/where.c 51e5a83eee14e49b7fa027704410d4a6d442eea5888a6149970bde22b95f8d99
+F src/where.c a41a5713482208a67524f596110cfb3a403cff2c29b8b2cb53d32647cad83f73
 F src/whereInt.h 446e5e8018f83358ef917cf32d8e6a86dc8430113d0b17e720f1839d3faa44c4
 F src/wherecode.c 8bdc239eae3d39f9f6ace4299eeb86e1e0c56eed88b60f9c473dc85ae79f4e89
 F src/whereexpr.c 4ba94b8ebbff97c658b212de6ccdb6d3a41847800bdf99e7a2a967c250269f2c
@@ -1912,7 +1912,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 c337849416c588142a5066db3feb1716b7a9d02536bdb73cc9da7d162c0d5494
-R acaf9a66f000f36d40780462a0e85f01
+P b1bf0d987578160f002035ff41ec7c82011288f1c0449414a4b3da39b20f871c
+R d899c40e7a3f11646de32c2ce046e5bb
 U drh
-Z 3258fb8dab69df269f0cecfca3e06fcf
+Z b837fda7d0fb492e0b25393fa9d5bd5a
index dcc1f6b5ea1b96efbe84c972a2b4f077a739c4a9..e4a6040ac69904ec67f112615a2f91d2ed55a205 100644 (file)
@@ -1 +1 @@
-b1bf0d987578160f002035ff41ec7c82011288f1c0449414a4b3da39b20f871c
\ No newline at end of file
+cc6463fe6d23febeea5171f9a1bcb1e5f980f7f44b7e85022d5fd8662b471160
\ No newline at end of file
index eefad3593e16afd05fed6eeb880a2d951c6af63b..73d13c3ae2814d0005471992df6b390eb77f0a29 100644 (file)
@@ -803,7 +803,7 @@ static void constructAutomaticIndex(
       }
     }
   }
-  assert( nKeyCol>0 );
+  assert( nKeyCol>0 || pParse->db->mallocFailed );
   pLoop->u.btree.nEq = pLoop->nLTerm = nKeyCol;
   pLoop->wsFlags = WHERE_COLUMN_EQ | WHERE_IDX_ONLY | WHERE_INDEXED
                      | WHERE_AUTO_INDEX;