]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Bug fix in sqlite3_str_free(): Do not crash if called on an sqlite3_str
authordrh <>
Wed, 15 Apr 2026 14:17:58 +0000 (14:17 +0000)
committerdrh <>
Wed, 15 Apr 2026 14:17:58 +0000 (14:17 +0000)
object returned from sqlite3_str_new() following an OOM.

FossilOrigin-Name: 92d8ac0c4938e43b00111b43630ecfa91c30e5200ca03937a84f4b50bd1a13b3

manifest
manifest.uuid
src/printf.c

index 0dc37e1c99c9f75e673378c0863692af48c88a4a..87cdab02c58b0f8ac13b417c834729aef5bca16e 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\ssupport\sfor\sthe\sanalyze()\sextension\sfunction\sto\sthe\sfuzzcheck\stest\nprogram.
-D 2026-04-15T13:05:43.445
+C Bug\sfix\sin\ssqlite3_str_free():\sDo\snot\scrash\sif\scalled\son\san\ssqlite3_str\nobject\sreturned\sfrom\ssqlite3_str_new()\sfollowing\san\sOOM.
+D 2026-04-15T14:17:58.981
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -731,7 +731,7 @@ F src/pcache.h 092b758d2c5e4dabb30eae46d8dfad77c0f70b16bf3ff1943f7a232b0fe0d4ba
 F src/pcache1.c 131ca0daf4e66b4608d2945ae76d6ed90de3f60539afbd5ef9ec65667a5f2fcd
 F src/pragma.c 789ef67117b74b5be0a2db6681f7f0c55e6913791b9da309aefd280de2c8a74d
 F src/prepare.c f6a6e28a281bd1d1da12f47d370a81af46159b40f73bf7fa0b276b664f9c8b7d
-F src/printf.c d442fda86ad11da7923dbb354d3761229b5b51dbe06c5c208fa75e3411c79434
+F src/printf.c 50be92de0725e88c8b38978775ab46f9b42d74e21f65045c3423503173eb0566
 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
 F src/resolve.c 928ff887f2a7c64275182060d94d06fdddbe32226c569781cf7e7edc6f58d7fd
 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
@@ -2199,8 +2199,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
 F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
 F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
-P 35379f60922f14d4f6d231ae627df066ad4e4510208bcc244505b9afb279f2fa
-R 28006860b1b1a43a829288faaa7963e6
+P abd94554d24122f0e0c3b7b36e5846e8c7aa0dddbddd9aae35b3f6ae6ab283c0
+R bb786b742a321483de5f87d2e41f6d12
 U drh
-Z e63bdb2ecb78062185d63a76b70d31ae
+Z e43a1213c0ba328d95f725f01a15a92f
 # Remove this line to create a well-formed Fossil manifest.
index bcc31d6ce6f3f090bdd0143807eb26052d3ab0c6..83a3bc990f61d3f5af54f87f211b12f4f6e7e6e2 100644 (file)
@@ -1 +1 @@
-abd94554d24122f0e0c3b7b36e5846e8c7aa0dddbddd9aae35b3f6ae6ab283c0
+92d8ac0c4938e43b00111b43630ecfa91c30e5200ca03937a84f4b50bd1a13b3
index e78eb51393e0227b3e28cdaec43555a25cac157a..4596cc10fefbba350cce506a07857a20af3cb191 100644 (file)
@@ -1322,7 +1322,7 @@ void sqlite3_str_reset(StrAccum *p){
 ** of its content, all in one call.
 */
 void sqlite3_str_free(sqlite3_str *p){
-  if( p ){
+  if( p!=0 && p!=&sqlite3OomStr ){
     sqlite3_str_reset(p);
     sqlite3_free(p);
   }