Merge the FTS5 memory leak fix from trunk.
FossilOrigin-Name: fb65cb73d7ea22a8b20dccfa3abdaaa809eee4fcee6fe4846bd2e598ceb49aa4
This commit is contained in:
commit
3f47e7551c
@ -4835,13 +4835,13 @@ static void fts5SecureDeleteOverflow(
|
|||||||
int i1 = pLeaf->szLeaf;
|
int i1 = pLeaf->szLeaf;
|
||||||
int i2 = 0;
|
int i2 = 0;
|
||||||
|
|
||||||
aIdx = sqlite3Fts5MallocZero(&p->rc, (pLeaf->nn-pLeaf->szLeaf)+2);
|
|
||||||
if( aIdx==0 ) break;
|
|
||||||
i1 += fts5GetVarint32(&aPg[i1], iFirst);
|
i1 += fts5GetVarint32(&aPg[i1], iFirst);
|
||||||
if( iFirst<iNext ){
|
if( iFirst<iNext ){
|
||||||
p->rc = FTS5_CORRUPT;
|
p->rc = FTS5_CORRUPT;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
aIdx = sqlite3Fts5MallocZero(&p->rc, (pLeaf->nn-pLeaf->szLeaf)+2);
|
||||||
|
if( aIdx==0 ) break;
|
||||||
i2 = sqlite3Fts5PutVarint(aIdx, iFirst-nShift);
|
i2 = sqlite3Fts5PutVarint(aIdx, iFirst-nShift);
|
||||||
if( i1<pLeaf->nn ){
|
if( i1<pLeaf->nn ){
|
||||||
memcpy(&aIdx[i2], &aPg[i1], pLeaf->nn-i1);
|
memcpy(&aIdx[i2], &aPg[i1], pLeaf->nn-i1);
|
||||||
|
14
manifest
14
manifest
@ -1,5 +1,5 @@
|
|||||||
C Merge\strunk\schanges\swith\sthis\sbranch.
|
C Merge\sthe\sFTS5\smemory\sleak\sfix\sfrom\strunk.
|
||||||
D 2023-07-18T13:55:55.856
|
D 2023-07-18T17:43:47.072
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||||
@ -92,7 +92,7 @@ F ext/fts5/fts5_buffer.c 3001fbabb585d6de52947b44b455235072b741038391f830d6b7292
|
|||||||
F ext/fts5/fts5_config.c 010fabcc0aaa0dfa76b19146e8bddf7de368933eeac01e294af6607447500caa
|
F ext/fts5/fts5_config.c 010fabcc0aaa0dfa76b19146e8bddf7de368933eeac01e294af6607447500caa
|
||||||
F ext/fts5/fts5_expr.c 2473c13542f463cae4b938c498d6193c90d38ea1a2a4f9849c0479736e50d24d
|
F ext/fts5/fts5_expr.c 2473c13542f463cae4b938c498d6193c90d38ea1a2a4f9849c0479736e50d24d
|
||||||
F ext/fts5/fts5_hash.c d4fb70940359f2120ccd1de7ffe64cc3efe65de9e8995b822cd536ff64c96982
|
F ext/fts5/fts5_hash.c d4fb70940359f2120ccd1de7ffe64cc3efe65de9e8995b822cd536ff64c96982
|
||||||
F ext/fts5/fts5_index.c 109d8a75ee8a25fa19eb54073e2fc74385e79460e75ddf74a218475d20ab2c33
|
F ext/fts5/fts5_index.c 78c234c47a4870dd8dad7289f457188b8b8c039ce6ecf0e1d8aea0d369857522
|
||||||
F ext/fts5/fts5_main.c ede405f0f11db562653b988d043a531daa66093b46c1b35b8fcddb54819cba84
|
F ext/fts5/fts5_main.c ede405f0f11db562653b988d043a531daa66093b46c1b35b8fcddb54819cba84
|
||||||
F ext/fts5/fts5_storage.c 7d22c8ea1d484134bd715f55b370ae9b5a830b627986344c4ffa532c3e89186b
|
F ext/fts5/fts5_storage.c 7d22c8ea1d484134bd715f55b370ae9b5a830b627986344c4ffa532c3e89186b
|
||||||
F ext/fts5/fts5_tcl.c b1445cbe69908c411df8084a10b2485500ac70a9c747cdc8cda175a3da59d8ae
|
F ext/fts5/fts5_tcl.c b1445cbe69908c411df8084a10b2485500ac70a9c747cdc8cda175a3da59d8ae
|
||||||
@ -2044,8 +2044,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P d928856a226fb7f001e55ff7e8eb58a656b982f1efa811de46c382b8b7cd778c def41225b2f10b0294ab506f28bc87873688d4030f7056839298ff18e058ece5
|
P 5f66eb4e2603278dcc9dbfe4bf506cba1aa03180cfb492a0dfc3a8be32cc994b 4dcad2db743fdb9ef72871ca5a4d1384f76cb697161b0f5110e2670a83a18e8a
|
||||||
R 9340fb85125cf56624b0a9d4f0a2c56f
|
R 6df4842f998a408f262f6f4830fd595f
|
||||||
U dan
|
U drh
|
||||||
Z f5189abe425e3b17c98ece46e03fa113
|
Z 63584765e02f480fe2927dfa6f8c1662
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
@ -1 +1 @@
|
|||||||
5f66eb4e2603278dcc9dbfe4bf506cba1aa03180cfb492a0dfc3a8be32cc994b
|
fb65cb73d7ea22a8b20dccfa3abdaaa809eee4fcee6fe4846bd2e598ceb49aa4
|
Loading…
Reference in New Issue
Block a user