drh
b9e656f6f7
Fix a faulty assert() in rtree that could fire when processing an unusually large record.
...
FossilOrigin-Name: 004d85c5f1bf04409ce85d5131f1d9697f25f531046e60160e78b0bae7f55123
2026-06-03 16:58:01 +00:00
drh
c867ce4b89
Use tail recursion on the larger of the two partitions when doing a
...
quicksort as part of the implementation of the median() function,
to avoid excess stack usage on pathological inputs.
FossilOrigin-Name: b8fce837cf633af7e489e9750bcd1764e96f9ad7ea01847d5ef9c7060f01a4bf
2026-06-03 16:23:45 +00:00
drh
ceb66403bb
Fix an integer overflow problem in fts3 that could lead to a buffer overwrite on platforms where size_t is 32-bits.
...
FossilOrigin-Name: 1389ec7bf6a7f68406adae6fd532497b2496f01fb5b465e18bd683da3f8f53ad
2026-06-03 15:54:58 +00:00
drh
6c1aa834f6
Fix another buffer overread in fts5 that could occur when processing
...
corrupt records.
FossilOrigin-Name: 8427cac76455ecbef224ceaccbb37b79338015bcfe67209ae462f36ffefa8466
2026-06-03 15:02:29 +00:00
drh
e7d405200a
Fix another potential buffer overrun that could occur in fts5 when
...
processing corrupt records.
FossilOrigin-Name: e583a723fa501d0c53ad124b571bcd6a42d76daba1ea983d3a547763c2c94c22
2026-06-03 14:24:19 +00:00
drh
c911dda3d3
Fix a potential UAF bug in the zipfile extension.
...
FossilOrigin-Name: 46fbc23c16b3d104605f5abe5d7a5e779021e264bde409f2d9939de9b5cb9b37
2026-06-03 13:16:20 +00:00
drh
edec48cd40
Avoid excessive recursion and stack overflow in fts3 when processing a corrupt
...
database.
FossilOrigin-Name: c32ddb6a3fe2b8cd5f8a8a133bd2d4061243a3bc0e7e29a96b4d0e5e6090977f
2026-06-03 12:04:07 +00:00
drh
f7915390d5
The prefix_length() function should stop at the first NUL terminator.
...
FossilOrigin-Name: b5f9dc646df5059e546ceb1404a62aadeff4a33163d9b3758e78a33ff3c23467
2026-06-03 11:30:01 +00:00
drh
42be6fdf22
Make the (unused, untested, and unsupported) ext/misc/compress.c routines
...
responsive to OOM conditions.
FossilOrigin-Name: 2d1dc1c6c679d920e4f5d79acefbf318183ef37bc65bc78dc50f8512f317c1f5
2026-06-03 11:05:22 +00:00
dan
31a9e5c5d9
Update the session module so that it can apply changesets containing two or more UPDATE changes that form a dependency loop - so that no single UPDATE can be applied independently without violating a constraint.
...
FossilOrigin-Name: 919d393a3bc483bf58be1f8d6c2ef70f570d63cc9ad8d8df6a6562fb270ea7e5
2026-06-02 18:23:55 +00:00
drh
81ceb00b00
Fix an integer overflow that could lead to a buffer overrun in the zipfile
...
extension.
FossilOrigin-Name: ae9c99b904a8d1b9745a8f09cb35412e4107f4f24f95cabccc18a777b9e76bdf
2026-06-01 13:44:19 +00:00
drh
8626a528e1
Extra defenses against integer overflows in the untested, unused, and
...
unsupported transliterate() SQL extension function found in the
ext/misc/spellfix.c extension.
FossilOrigin-Name: ca800b1d2d243715426045df0d40ad171aed89182f4a5bb1055787964e74ff3c
2026-06-01 13:39:15 +00:00
drh
b8c5fe2c19
Fix the zipfile extension so that ZIP archives containing files whose names
...
contain embedded \000 bytes do not cause problems.
FossilOrigin-Name: f6108e2fbdddfa03154a12efab17e5c1d681884ebcdfb6da5c319544601676ed
2026-05-31 15:52:29 +00:00
drh
d542c33c9d
Add a test to ensure an application does not try to create a geopoly
...
virtual table with too many columns.
FossilOrigin-Name: 00dc6063077080c7922c335f04bc1a34a7c8c8c3e85b8771c3133d264af3119e
2026-05-30 13:25:49 +00:00
drh
fa5d2efbfc
Remove the untested and undocumented "scrub" utility program. It was written
...
in 2016, but made obsolete by the VACUUM INTO command in 2019.
FossilOrigin-Name: 20c458172e0b09f7ada7f8cb8be95450c3988e620cbf6f174470bf8e78dcfbf0
2026-05-30 10:15:58 +00:00
drh
d38b6c0a19
Fix a potential 1-byte overread in sqlite3changeset_invert() when
...
processing a corrupt buffer.
FossilOrigin-Name: 69554ec4e8354e8573071bc423e2dbd0059058388481be3e76fcb7c0fc1ff467
2026-05-26 15:09:07 +00:00
drh
600eb440c2
Fix a 32-bit integer overflow in sqlite3changegroup_change_blob() that
...
could lead to a buffer overwrite.
FossilOrigin-Name: f2a8ae2251561f2255c2974914293647cf304c6db79de9da957755fccaf8a8b6
2026-05-26 14:23:36 +00:00
drh
e9b5658888
Fix QRF so that it works sensibly with "--wrap 1"
...
FossilOrigin-Name: 90eb6c22687449441824c7da5741a31e78bb78098c170382b230e851d03212c0
2026-05-26 13:57:36 +00:00
drh
18bc656fe1
Fix HTML ">" quoting in QRF.
...
FossilOrigin-Name: f6b35a9b5fc38245414f1bea9bc3c81b57f774711e77ab32fb91c984370ed5e9
2026-05-25 23:47:05 +00:00
drh
48aa50931a
Fix a potential buffer overwrite that could occur when in fts5 when handling corrupt records.
...
FossilOrigin-Name: 02733fc4bc27df64b50ca5027ac94fc643146efb24bb4fdbcc70c45e1c58c919
2026-05-25 17:23:58 +00:00
drh
2b6b982a77
Limit the length of inputs to the spellfix1_editdist() extension
...
function (not part of the standard SQLite build and rarely used)
to 99999 characters, to avoid any possibility of integer overflow.
FossilOrigin-Name: e56ac902fa4f1219d3affbe3ac9f822406a58486e456f0200a5d0f47fa4e5b43
2026-05-21 13:39:43 +00:00
drh
c4a831733f
Fix a bug causing the session module to dereference a NULL pointer when applying a corrupt changeset.
...
FossilOrigin-Name: c813d9b777bedd58005b53d38fa3c235ca56bd57b76424cf9238c01a977a4b3d
2026-05-20 15:29:37 +00:00
drh
9f426fa956
Check-in [0d01c90bd7779192] was incomplete in that it did not remove
...
the incorrect assert() statement. Fixed here.
FossilOrigin-Name: 2e9bb51ae951c421f7e5ed8e55fd6dca8b7d4b8543fd3ba3a9e9f017592c028b
2026-05-20 11:59:36 +00:00
drh
18bdf31933
Avoid returning an SQLITE_SCHEMA error from within sqlite3session_diff() if the schema has been recently modified.
...
FossilOrigin-Name: 15fb7ffe4be49d5242c47bef1b3cad5c923cd7f500896058db4dd257bc7b3924
2026-05-20 11:56:17 +00:00
drh
f034bd10f0
Fix a potential buffer overread in fts5 that could occur when handling
...
corrupt records. Improved detection of corrupt fts5 records.
FossilOrigin-Name: fad98805b7d73abf0cf17919397ac50757a2b888354fcf42b72640a12f32926c
2026-05-20 10:01:25 +00:00
drh
0d8e4e27b7
Silently ignore nested porter tokenizers in FTS5. Having nested porter
...
tokenizers is pointless, but it does use stack space unnecessarily.
FossilOrigin-Name: 8207ca671e1253135e5e36cd123fdcfb4d1f0fcf939d2c94238425fafd38c75a
2026-05-20 09:36:42 +00:00
drh
dfc91368e7
Prevent integer overflow in the ICU extension.
...
FossilOrigin-Name: 42ef6f3f4fbe9fce3312259855df53d89e002adb0cf798c4aad074a8b7e988d5
2026-05-19 18:59:39 +00:00
drh
d75e0a89ad
Fix an assertion fault that can occur in RTree given a carefully
...
corrupted database.
FossilOrigin-Name: 0d01c90bd7779192f0541dfc43624f70241c45accf06ad43666310ec50e486d6
2026-05-19 18:47:37 +00:00
drh
62587d292b
Limit the size of input strings to the (disused) spellfix extension
...
to avoid excessive runtime and integer overflows.
FossilOrigin-Name: 2a8951b548a9408df300d238a9fea313268a30c322f0efc0b233bdd3e71a7f9d
2026-05-19 10:33:53 +00:00
drh
4e2383b65b
Fix a NULL pointer dereference in the obscure (and unused) prefixes
...
extension, which I had forgotten even existed.
FossilOrigin-Name: 24b8ecd17f70f222c40aa91382515a7d0d0b82c882498ae0714818d672806e7f
2026-05-19 10:30:29 +00:00
drh
0b223f1027
Fix an off-by-one error in matchinfo('b') for FTS3 when there are a large
...
number of columns.
FossilOrigin-Name: 9bf2f4ca8f3d0cce2ac0bf3742a04a83460d309bd8864bd414946d35106014a9
2026-05-18 23:42:58 +00:00
drh
83f261d5a0
Limit the NEAR span in FTS3 to 1 billion, to avoid integer overflow.
...
FossilOrigin-Name: 99ea33f48d2e3b0df6561c63814750bd848577df83eae9132e9ea0d009925838
2026-05-18 20:46:08 +00:00
drh
8d36080bd5
Prevent integer overflow due to database corruption in.
...
fts3auxNextMethod().
FossilOrigin-Name: aebf56a78d57b06079063fd008d56d1b4637c25de8cd5e5883ed8f8f63d42cca
2026-05-18 20:30:31 +00:00
drh
e0b995b2a6
Fix potential buffer overwrite that could occur in fts5 when processing corrupt records.
...
FossilOrigin-Name: 061febcf41ca4872a0f407951e1507209daca7895122b909a7806c60b6e200c4
2026-05-11 12:00:19 +00:00
drh
0268517163
Fix a corner-case floating-point rounding problem in the generate_series()
...
virtual table.
FossilOrigin-Name: 931119281252ba73693770ac301010a84eb9c2b06247b17e3252271163341ab0
2026-05-09 12:08:59 +00:00
stephan
b14b7681f4
Fix a predicate which causes a false error in the OPFS SAHPool tests when building with SEE.
...
FossilOrigin-Name: 1d2f770713f9d75d0de923515f4cee8ff83e95826d77f049b7bb1fbfad042248
2026-05-05 08:12:37 +00:00
drh
20847aca95
Harden the recovery extension against SQL injections coming from the
...
sqlite_schema table of the database being recovered.
FossilOrigin-Name: 555401fe048a51ecaed3ef672723b6ef8e1340c7028c11a17731abbc399bc078
2026-05-01 13:56:19 +00:00
drh
2ba7864bc4
Fix a single-byte OOB read that could occur in the session module when concatenating patchsets.
...
FossilOrigin-Name: 5150cf9a89aebfd7121b4742c8b359116f16d890e83b64105bb192d3d0f68971
2026-04-25 15:04:21 +00:00
stephan
002226b549
Reformulate how the OPFS async proxy Worker is loaded for the bundler-friendly builds to work around a bug in Vite in which it incompatibly rewrites the Worker's URL arguments. Addresses the discussion at [ https://github.com/sqlite/sqlite-wasm/pull/159 |npm package PR 159] and patch validated by Jure Rotar.
...
FossilOrigin-Name: 6215c9dd27ca446bf61d8ee7adcf455d35914853b19cb5f5feff5ce0f420e7b7
2026-04-21 10:15:16 +00:00
dan
8113b83c01
Handle a special case of a corrupt changeset in sqlite3changegroup_add().
...
FossilOrigin-Name: dceee93ab38a623a6c94658583ad6e012e141d5a4eaa91b074de06e175cb4175
2026-04-15 17:13:42 +00:00
stephan
2c01c19968
Ensure that sqlite3-opfs-async-proxy.js is copied into the fiddle target dirs.
...
FossilOrigin-Name: d4e0e81afda425b23ac52f08ab9c3a2c136b8a963bd09ebcfb2f6f305b23e396
2026-04-10 23:33:31 +00:00
stephan
81fa34e507
API doc correction for sqlite3_js_retry_busy(). No code changes.
...
FossilOrigin-Name: e2bfb67da9538527b2eb92d261c82d4d0854a36ac55989373f07e3b854678694
2026-04-10 17:56:54 +00:00
dan
535b1f2875
Fix some buffer overreads that might occur in the session module when handling corrupt changesets.
...
FossilOrigin-Name: 8fcf92e15d87487703afc1129f3a89a8d4d72cb30d30a1a9151a5596473069bd
2026-04-09 05:33:19 +00:00
stephan
0d979c217f
Fix a few doc typos and inconsistencies. No code changes.
...
FossilOrigin-Name: 025abd4cf409fb9938e116289f23dc5bcd6d14feb46066221e691b146ee9b354
2026-04-07 15:54:35 +00:00
drh
606c64a543
Fix redundant typedef in qrf.c when that file is amalgamated into
...
tclsqlite3.c.
FossilOrigin-Name: b8f0c71b48953cb6d5a8b3d33d004a31b63c59d59d455f285bf8fa91c3b07129
2026-04-07 11:31:41 +00:00
stephan
eefe3aa9ad
Replace a doc reference to a renamed file, as reported by [forum:5d9d70c618|forum post 5d9d70c618]. No code changes.
...
FossilOrigin-Name: c8121593fa455cd43b3878f8b65ebac47c07dab4b8ce081aa34b14fc9440afbc
2026-04-07 09:15:21 +00:00
stephan
d4b74b9fac
Add some comments to the OPFS async proxy about potential future experimentation. No code changes.
...
FossilOrigin-Name: 9c14ee74305a5db3be95dbd9ae8d1db0abf39b323001be4e2f02b7226e6ca0d3
2026-04-04 08:07:25 +00:00
drh
217c590688
Fix Tcl9 compatibility issues in test_session.c.
...
FossilOrigin-Name: 1387b5819085146cafb0e8740410faaa48bfb5aefc78ff763aaa8e85744d48b3
2026-04-03 11:48:00 +00:00
dan
62f3150204
Fix a potential 4-byte overread in the sessions module when processing a corrupt changeset.
...
FossilOrigin-Name: c1c7e024c34da8eb0258ce552f3f81921280ccf0f1fea59374f381c0c7b43b74
2026-04-01 17:43:22 +00:00
drh
34e139d3a3
Always use sqlite3_malloc64() in extensions, where possible.
...
FossilOrigin-Name: 6194f3b5314ef98b5d73060450de8e3497272494b47e6f96992453418894ded1
2026-04-01 16:56:48 +00:00